我在kivymd中的MDExpansionPanel没有扩展,我已经在.kv文件中编写了该代码
这是我的.py文件
from kivymd.app import MDApp
class TtApp(MDApp):
pass
TtApp().run()
这是我的.kv文件
Screen:
BoxLayout:
orientation: "vertical"
MDExpansionPanelTwoLine:
text: ''
secondary_text: 'email: xxxxx@gmail.com'
IconLeftWidget:
icon: "email"
TwoLineAvatarListItem:
text: ''
secondary_text: 'to: @gmail.com'
IconLeftWidget:
icon: "email"
答案 0 :(得分:0)
我知道了它的工作原理,我认为它与您的设置方式完全相同。
似乎您必须通过Python而非KV语言来构建MDExpansionPanel
。另外,您还必须为content
对象定义panel_cls
和MDExpansionPanel
。
您是新来的main.py
:
from kivymd.app import MDApp
from kivymd.uix.boxlayout import MDBoxLayout
from kivymd.uix.expansionpanel import MDExpansionPanel, MDExpansionPanelTwoLine
from kivymd import images_path
class Content(MDBoxLayout):
pass
class TtApp(MDApp):
def on_start(self):
self.root.ids.box.add_widget(
MDExpansionPanel(
icon=f"{images_path}folder.png", # need an email .png here
content=Content(),
panel_cls=MDExpansionPanelTwoLine(
text='',
secondary_text='email: xxxxx@gmail.com',
)
)
)
TtApp().run()
这是您的新tt.kv:
<Content>:
adaptive_height: True
TwoLineAvatarListItem:
text: ''
secondary_text: 'to: @gmail.com'
IconLeftWidget:
icon: "email"
Screen:
BoxLayout:
orientation: "vertical"
id: box