Kivy是开源Python函式库,用于开发行动应用程序和其它采用自然用户界面的多点触控应用软件。它可以在Android,iOS,Linux,OS X和Windows执行。采用MIT授权条款,Kivy是自由并且开源的软件。
简介
Kivy的主要架构由Kivy组织开发,并有Python用于Android,Kivy iOS和其它许多函式库被使用在所有平台。在2012年,Kivy从Python软件基金会获得$5000美元补助,用于移植Kivy到Python 3.3。Kivy也支援由Bountysource赞助的树莓派。
其架构包括所有建造应用程序的元素,例如:
支援许多种输入,例如鼠标,键盘、触控式使用者界面(TUIO)和特定操作系统的多重触控事件,只采用OpenGL ES 2的图形函式库,且根基于向量缓冲物件(Vertex Buffer Object)和着色器,支援多点触控的庞大控件,一个中间语言(Kv)用来简化客制控件的设计。
Kivy改良了PyMT专案,并且推荐给新的专案采用。1
程式范例
以下是一个按钮的Hello World程式范例2:
from kivy.app import Appfrom kivy.uix.button import Buttonclass TestApp(App): def build(self): return Button(text='Hello World')TestApp().run()Kv 语言
Kivy语言(Kv)是致力于描述使用者界面和与使用者互动的一种语言。就像QML,它能够简单的建造整个使用者界面并加上互动。例如,建造一个包括档案浏览器,和取消/载入按钮的对话框,它能够采用Python快速的造出基本的控件,之后用Kv造出使用者界面。
在main.py:
class LoadDialog(FloatLayout): def load(self, filename): pass def cancel(self): pass
并且在相关的Kv2:
#:kivy 1.4.0: BoxLayout: size: root.size pos: root.pos orientation: "vertical" FileChooserListView: id: filechooser BoxLayout: size_hint_y: None height: 30 Button: text: "Cancel" on_release: root.cancel() Button: text: "Load" on_release: root.load(filechooser.path, filechooser.selection)
本词条内容贡献者为:
王沛 - 副教授、副研究员 - 中国科学院工程热物理研究所

扫码下载APP
科普中国APP
科普中国
科普中国