带有额外空格的 Python KivyMD MDBottomSheet
Posted
技术标签:
【中文标题】带有额外空格的 Python KivyMD MDBottomSheet【英文标题】:Python KivyMD MDBottomSheet with extra blank space 【发布时间】:2020-12-14 11:40:21 【问题描述】:我现在正在构建一个应用程序,我想在那里实现 MDBottomSheet,但是有一个问题:底部表总是有一些额外的空白空间。
它是这样的:
我很确定您可以看到“取消”按钮后有空白区域,我不知道如何解决。
这是我的一些 Python 代码:
from kivymd.app import MDApp
from kivymd.uix.bottomsheet import MDListBottomSheet
class MainApp(MDApp):
def __init__(self, **kwargs):
super().__init__(**kwargs)
def screen_switch(self, scr_name):
self.root.manager.current = scr_name
self.root.toolbar.title = scr_name.capitalize()
def open_bottom_sheet(self):
bottom_sheet_menu = MDListBottomSheet(radius_from="top", radius=15)
menu_items = [
("About the app", lambda x: self.screen_switch("About the app"), "help"),
("Leave a review", lambda x: self.screen_switch("Leave a review"), "email"),
("Cancel", lambda x: bottom_sheet_menu.dismiss(), "close")
]
for txt, func, icon in menu_items:
bottom_sheet_menu.add_item(txt, func, icon)
bottom_sheet_menu.open()
这是我的一些 Kivy 代码:
BoxLayout:
orientation: "vertical"
toolbar: toolbar
MDToolbar:
id: toolbar
type: "top"
title: "Plans"
right_action_items: [("dots-vertical", lambda y: app.open_bottom_sheet())]
提前致谢!
【问题讨论】:
您是否尝试更改 MDListBottomSheet 的 size_hint_y:None 和 height:'200sp' [根据需要更改此值] 【参考方案1】:我尝试了这个解决方法,它奏效了。在 open 语句之前插入以下行。
bottom_sheet_menu.sheet_list.ids.box_sheet_list.padding = (dp (16), 0, dp (16), 0)
希望它也对你有用。
【讨论】:
以上是关于带有额外空格的 Python KivyMD MDBottomSheet的主要内容,如果未能解决你的问题,请参考以下文章
我在 Python/KivyMD 中制作了 MDDialog 但没有正确显示
如何在 KivyMD (Python) 中结合导航抽屉和多个屏幕?