画面にダイナミックにボタンを追加しようとしています。私は、アプリケーションを実行すると、次のエラーがあります。問題を解決するのを手伝ってください。ここでScreenManagerのスクリーンにボタンを動的に追加する際のエラーKivy
Traceback (most recent call last): File "main.py", line 174, in screenManager.add_widget(HomeScreen(name = 'homeScreen')) File "main.py", line 162, in init self.add_widget(btn) File "/Applications/Kivy.app/Contents/Resources/kivy/kivy/uix/floatlayout.py", line 111, in add_widget pos=self._trigger_layout, AttributeError: 'HomeScreen' object has no attribute '_trigger_layout'
私main.py
class HomeScreen(Screen):
def __init__(self, **kwargs):
for i in range(80):
btn = Button(text=str(i), size=(90, 90), size_hint=(None, None))
self.add_widget(btn)
# Screen Manager
screenManager = ScreenManager(transition = FadeTransition())
# Add all screens to screen manager
#screenManager.add_widget(UsernameScreen(name = 'usernameScreen'))
#screenManager.add_widget(PasswordScreen(name = 'passwordScreen'))
#screenManager.add_widget(LevelTwoScreen(name = 'levelTwoScreen'))
#screenManager.add_widget(LevelTwoScreen(name = 'levelThreeScreen'))
screenManager.add_widget(HomeScreen(name = 'homeScreen'))
class ThreeLevelAuthApp(App):
def build(self):
return screenManager
if __name__ == '__main__':
ThreeLevelAuthApp().run()
kivyファイル
<HomeScreen>:
ScrollView:
size_hint: None, None
size: 400, 400
pos_hint: { 'center_x': 0.5,'center_y': 0.5 }
do_scroll_x: False
GridLayout:
cols: 6
padding: 20
spacing: 20
size_hint: None, None
width: 400
ああ私は愚かな間違いを犯しました。とにかく、ありがとう。今はうまくいく。 –