我知道在Python中构建跨平台的唯一方法是Kivy,但是我最近听说了Beeware项目和这个叫做Toga的工具。据我所知,它还处于早期阶段,很多人也不熟悉它,但网站上有几个基本教程。它看起来很有前途,但我不知道它的未来,也不知道如果我开始研究它可能会面临的问题,因为到目前为止它可能有很多bug。我在文档上看到Toga让你构建本机跨平台应用程序,Kivy应用程序不是本机的吗?它们是不是像你在Phonegap上构建的那样的混合应用程序?谢谢
发布于 2017-08-30 05:53:52
Toga通过将Toga api映射到不同系统上的本地平台窗口小部件来实现其gui。这意味着这些应用程序将自动地看起来和该系统中的其他“本机”应用程序一样。相比之下,Kivy使用opengl进行绘图,使用自己的小部件工具包。这意味着默认情况下,它在所有不同平台上的外观和行为都完全相同。您可以对其进行自定义,但在实践中很难获得真正像另一个框架那样工作的东西。
这两种方法各有优缺点。Kivy是非常灵活和可移植的,因为你可以在任何地方使用opengl,而更难的部分可能是编译Kivy和Python本身。另一方面,Toga的方法是获得真正像本机应用程序的东西的唯一方法,也可能避开一些Kivy问题,比如Android上启动相对较慢。也就是说,与Kivy的绘图API相比,我不确定是否需要明确地包装不同的小部件意味着它可能不太灵活。Kivy的绘图API基本上可以在没有特殊平台支持的情况下实现任何功能。
https://stackoverflow.com/questions/45945387
复制相似问题