我试图使用KivyMD构建三个选项卡,但是当我向每个MDTabsBase添加内容时,内容始终占用相同的空间。我尝试了很多更改它的大小,以使内容占据整个包装盒的功能,但是却无法正常工作。
这里是内容的样子:
和代码:
Screen:
name: 'itemscad_food'
BoxLayout:
id: boxcad
orientation: 'vertical'
MDToolbar:
id: toolcad
title: "Item Register"
md_bg_color: app.theme_cls.primary_color
anchor_title: 'justify'
left_action_items: [['menu-left', lambda x: app.back_button()]]
BoxLayout:
id: tabox
orientation: 'vertical'
MDTabs:
id: itemstab
tab_display_mode: 'text'
MDTabsBase:
id: ingr_tab
name: 'ingredients'
text: "Ingredientes"
MDTabsBase:
id: prod_tab
name: 'products'
text: "Products"
MyLabel:
text: 'Strawberry Cake'
MyLabel:
text: 'Chocolate Cake'
MDTabsBase:
id: pack_tab
name: 'packs'
text: "Pacotes"
是的,我仅使用KV语言。我在上面构建App的大部分布局,到目前为止,一切都很好,除了:/
我还尝试了另一种方式:
这是另一种样子:
和代码:
Screen:
name: 'itemscad_food'
BoxLayout:
id: boxcad
orientation: 'vertical'
MDToolbar:
id: toolcad
title: "Item Register"
md_bg_color: app.theme_cls.primary_color
anchor_title: 'justify'
left_action_items: [['menu-left', lambda x: app.back_button()]]
BoxLayout:
id: tabox
orientation: 'vertical'
MDTabs:
id: itemstab
tab_display_mode: 'text'
MDTabsBase:
id: ingr_tab
name: 'ingredients'
text: "Ingredientes"
MDTabsBase:
id: prod_tab
name: 'products'
text: "Products"
MDTabsBase:
id: pack_tab
name: 'packs'
text: "Pacotes"
FloatLayout:
BoxLayout:
id: listbox
size_hint_y: None
height: boxcad.height - (toolcad.height + itemstab.tab_bar_height)
orientation: 'vertical'
ScrollView:
do_scroll_x: False
MDList:
OneLineRightIconListItem:
text: 'Strawberry Cake'
MyListDeleteIcon:
icon: 'trash-can'
OneLineRightIconListItem:
text: 'Chocolate Cake'
MyListDeleteIcon:
icon: 'trash-can'
OneLineRightIconListItem:
text: 'Vanilla Cake'
MyListDeleteIcon:
icon: 'trash-can'
...
有人可以给我这个主意吗?
对于任何错误,我感到非常抱歉,因为我仍然习惯于对xD进行编码
还是谢谢!!
答案 0 :(得分:1)
在您的python文件中创建一个将从FloatLayout和MDTabsBase继承的类,然后可以将Labels放置在所需的任何位置enter code here
`导入MDTabsBase 从kivymd.uix.floatlayout导入FloatLayout
MyTab类(FloatLayout,MDTabsBase):
pass
MyTab1类(FloatLayout,MDTabsBase):
pass
`
使用Tab下的kivy文件访问该类,然后为它提供漂亮的外观
答案 1 :(得分:0)
您可以使用选项 allow_stretch 并在 MDTabs 下将其设置为 True。很抱歉,我似乎无法缩进代码。
MDTabs:
id: itemstab
tab_display_mode: 'text'
allow_stretch: True