0

我想制作一个有 3 个不同难度级别的应用程序,并且有一个 NavigationDrawer 来更改自定义应用程序,例如:激活深色主题。当我添加导航抽屉时,当应用程序的大小发生变化时,窗口中的元素不会移动,并且工具栏上有一个奇怪的空白区域。

这是具有默认大小的窗口。注意工具栏上的空白区域。

当我调整窗口大小时会发生这种情况

这是切换 NavigationDrawer 的窗口

此外,当我将窗口大小减小到最小值时,NavigationDrawer 中的按钮会发生这种情况

这是 kv 代码,Python 文件只包含一个空类:

Screen:
NavigationLayout:
    MDNavigationDrawer:
        id: nav_drawer
        MDRectangleFlatButton:
            text: "Screen 1"
            on_release: 
                screen_manager.current = "menu"
        MDRectangleFlatButton:
            text: "Screen 2"
            on_release: 
                screen_manager.current = "screen2"
            
    ScreenManager
        id: screen_manager
        Screen:
            name: "menu"
            BoxLayout:
                orientation: "vertical"
                spacing: "50dp"
            
            
                MDToolbar:
                    title: "Toolbar"
                    elevation: 11
                    left_action_items: [["menu", lambda x: nav_drawer.toggle_nav_drawer()]]
                    
                
                MDLabel:
                    text: "Select your level"
                    halign: "center"
                    pos_hint: {"center_x": 0.5, "center_y": 0.8}
                    font_style: "H5"
                    size_hint_y: None
                    hight: self.texture_size[1]
                    
                MDRectangleFlatButton:
                    text: "  Advanced  "
                    pos_hint: {"center_x": 0.5, "center_y": 0.7}
                    
                    
                    
                MDRectangleFlatButton:
                    text: "Intermediate"
                    pos_hint: {"center_x": 0.5, "center_y": 0.6}
                    
                    
                MDRectangleFlatButton:
                    text: "       Basic       "
                    pos_hint: {"center_x": 0.5, "center_y": 0.5}
                    
        Screen:
            name: "screen2"
            MDLabel:
                text: "Screen 2"
4

1 回答 1

0

我在这里测试过,尺寸标注工作正常。

空白是因为“间距:” 50dp “,将其更改为 80dp 并将您的 MDLabel 更改为:

MDLabel:
    text: "Select your level"

    halign: "center"

    pos_hint: {"center_x": 0.5, "center_y": 0.8}

    font_style: "H5"
于 2020-08-31T22:57:53.803 回答