【发布时间】:2014-09-14 03:19:58
【问题描述】:
我的 kivy 应用有近 100 个屏幕。我正在使用 ScreenManager 在启动时加载屏幕(下面的代码),但这导致应用程序需要 30 秒才能加载。有没有更有效的方法来处理 kivy 中的屏幕,所以屏幕只在需要时加载,而不是在应用启动时加载所有屏幕?我见过 kivy 的 switch_to(),但我不确定如何在 Button 小部件中使用它而不是 on_press: root.manager.current = 'login',或者 switch_to() 是否适合这个用例。在具有多个屏幕的 kivy 应用程序中有效加载和切换屏幕的最佳做法是什么?
class LoginScreen(Screen):
...
class GameApp(App):
sm = ScreenManager()
def build(self):
self.sm.add_widget(LoginScreen(name='login'))
self.sm.add_widget(SignUpScreen(name='signup'))
...
【问题讨论】:
标签: python python-2.7 kivy