我正在做一个在线kivy教程。以下是我写的代码。这与教程视频中的一样。.kv只允许一个根对象
但是当我运行的代码,我得到了以下错误:
...
1:import FadeTransition kivy.uix.screenmanager.FadeTransition
2:
>> 3:ScreenManagement:
4: transition: FadeTransition()
5:
...
Only one root object is allowed by .kv
我认为错误是与FadeTransition因为我有两个实例,MainScreen和AnotherScreen,但我不知道如何纠正它。在教程视频中,代码正常运行。那么为什么它不在我的电脑中执行?
下面是我事先写好
from kivy.app import App
from kivy.lang import Builder
from kivy.uix.screenmanager import ScreenManager, Screen, FadeTransition
class MainScreen(Screen):
pass
class AnotherScreen(Screen):
pass
class ScreenManagement(ScreenManager):
pass
presentation = Builder.load_string('''
#:import FadeTransition kivy.uix.screenmanager.FadeTransition
ScreenManagement:
transition: FadeTransition()
MainScreen:
AnotherScreen:
<MainScreen>:
name: "main"
Button:
text: "Next Screen"
font_size: 50
on_release: root.app.current = "other"
<AnotherScreen>:
name: "other"
Button:
text: "Back Home"
font_size: 50
on_release: root.app.current = "main"
''')
class MainApp(App):
def build(self):
return presentation()
if __name__=="__main__":
MainApp().run()
感谢代码。
,我建议一些解决您的代码布局。但我不知道答案 –