据我所知,有三种使用kivy的方法。你知道吗
Builder.load_string()
使用.kv格式。你知道吗我最近发现,使用在Python中初始化的kivy实例有时比在.kv
中初始化的实例工作得更快。你知道吗
例如
class Root(BoxLayout):
self.a = SomeWidget()
self.add_widget(self.a)
def some_function(self):
self.a.do_something() # <-- This line of the codes
往往比
Builder.load_string('''
Root:
SomeWidget:
id: a
''')
class Root(BoxLayout):
def some_function(self):
self.ids.a.do_something() # <-- This line of the codes
(仅考虑self.a.do_something()
和self.ids.a.do_something()
之间的性能)
我想的是,在我看来,kivy主循环是异步工作的,python是同步工作的,所以对.kv
的引用可以延迟到主循环完成一个周期。如果我错了,请纠正我。你知道吗
这样在性能上有区别吗?你知道吗
另外,使用Builder.load_string()
和.kv
文件在性能和功能上有什么区别吗?你知道吗
目前没有回答
相关问题 更多 >
编程相关推荐