我的问题是:我在kivymd学习材料设计。看到material design website,我注意到它使用了一个导航轨道,其中一些按钮添加了一个导航抽屉。图像:
所以我尝试在我的python程序中用kivymd创建它,但我的问题是,当我移动悬停时,导航抽屉会站在导航栏上方,像这样:
我试着使用pos,填充和间距,但不改变位置。pos_hint可以工作,但是导航栏有一个绝对的大小,所以没有解决。我恢复的kv语言:
MDNavigationRail:
id: nav_rail
selected_color_background: app.theme_cls.primary_color
ripple_color_item: app.theme_cls.primary_color
font_name: app.COMFORTAA
on_item_release: root._item_clicked(*args)
MDNavigationRailContent:
MDNavigationLayout:
MDScreenManager:
MDNavigationDrawer:
id: nav_drawer
radius: 0, 16, 16, 0
elevation: 0.5
font_size: '16dp'
font_name: app.COMFORTAA
padding_x: '100dp'
width: "240dp"
2条答案
按热度按时间0s7z1bwu1#
问得好!我也在想同样的事情。如果我弄明白了,我会把它贴在这里。
91zkwejq2#
我得到了它!在大量的工作和尝试之前,我得到了一种使用
pos_hint
的方法:首先我创建了一个MDFloatLayout,给MDNavigationDrawer可以有一个float的位置。
pos_hint是MDNavigationRail的宽度除以根的宽度,它将给予相对于根宽度的轨道末端百分比位置。
Peraps这些我需要把ScreenManager和铁路内框布局,像从文档的指导,并给予根大小和位置从MDBoxLayout内MDFloatLayout.
谢谢大家!