我花了相当多的时间试图解决这个问题, 我的实际目标是运行forloop以在kivymd中生成一个列表,而在这样做时,我得到了这个错误
TypeError: __init__() takes 1 positional argument but 2 were given
这是我简化的代码
from kivy.lang import Builder
from kivymd.app import MDApp
from kivymd.uix.list import *
KV = '''
ScrollView:
MDList:
id: list
'''
class MainApp(MDApp):
def build(self):
return Builder.load_string(KV)
def on_start(self):
ib = IconLeftWidget(icon='github')
ibn = OneLineAvatarIconListItem(
IconLeftWidget(icon='github')
)
self.root.ids.list.add_widget(ib)
MainApp().run()
需要通过forloop生成列表,并将图标用作按钮
OneLineAvatarIconListItem( IconLeftWidget(icon='github') )
#错误行
我知道问题是,你只能为函数传递一个参数,但是有一个方法是正确的!
请帮助T-T
我不知道这是否可以在一行完成,但这对我来说很有效
您可以创建自己的小部件使其更简单
最小工作代码
相关问题 更多 >
编程相关推荐