首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Kivy和Toga (Beeware项目)在Python中跨平台的区别

Kivy和Toga (Beeware项目)在Python中跨平台的区别
EN

Stack Overflow用户
提问于 2017-08-30 01:48:42
回答 1查看 3.6K关注 0票数 8

我知道在Python中构建跨平台的唯一方法是Kivy,但是我最近听说了Beeware项目和这个叫做Toga的工具。据我所知,它还处于早期阶段,很多人也不熟悉它,但网站上有几个基本教程。它看起来很有前途,但我不知道它的未来,也不知道如果我开始研究它可能会面临的问题,因为到目前为止它可能有很多bug。我在文档上看到Toga让你构建本机跨平台应用程序,Kivy应用程序不是本机的吗?它们是不是像你在Phonegap上构建的那样的混合应用程序?谢谢

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2017-08-30 05:53:52

Toga通过将Toga api映射到不同系统上的本地平台窗口小部件来实现其gui。这意味着这些应用程序将自动地看起来和该系统中的其他“本机”应用程序一样。相比之下,Kivy使用opengl进行绘图,使用自己的小部件工具包。这意味着默认情况下,它在所有不同平台上的外观和行为都完全相同。您可以对其进行自定义,但在实践中很难获得真正像另一个框架那样工作的东西。

这两种方法各有优缺点。Kivy是非常灵活和可移植的,因为你可以在任何地方使用opengl,而更难的部分可能是编译Kivy和Python本身。另一方面,Toga的方法是获得真正像本机应用程序的东西的唯一方法,也可能避开一些Kivy问题,比如Android上启动相对较慢。也就是说,与Kivy的绘图API相比,我不确定是否需要明确地包装不同的小部件意味着它可能不太灵活。Kivy的绘图API基本上可以在没有特殊平台支持的情况下实现任何功能。

票数 12
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/45945387

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档