Kivy(フレームワーク)

キヴィ
開発者Kivy組織
初回リリース2011年2月1日[ 1 ] (2011年2月1日
安定版リリース
2.3.1 / 2024年12月26日[ 2 ] ( 2024-12-26 )
リポジトリgithub .com /kivy /kivy
書かれたPythonCython
オペレーティング·システムクロスプラットフォーム
タイプアプリケーションフレームワーク
ライセンスMIT (フリーソフトウェア)
Webサイトkivy.org

Kivyは、モバイルアプリやその他のマルチタッチアプリケーションソフトウェアをナチュラルユーザーインターフェース(NUI)で開発するための、無料オープンソースPythonフレームワークです。MITライセンスに基づいて配布されており、 AndroidiOSLinuxmacOSWindowsで動作します。

KivyはKivy組織によって開発された主要なフレームワークであり、[ 3 ] Android用Pyt​​hon、[ 4 ] iOS用Kivy、[ 5 ]およびあらゆるプラットフォームで使用できることを目的とした他のいくつかのライブラリと並んで開発されています。2012年、KivyはPython 3.3への移植に対してPythonソフトウェア財団から5000ドルの助成金を受けました。 [ 6 ] KivyはBountysourceを通じて資金提供を受けたRaspberry Piもサポートしています。[ 7 ]

フレームワークには、次のようなアプリケーションを構築するためのすべての要素が含まれています。

KivyはPyMTプロジェクトの進化形です。[ 9 ]

コード例

以下はボタンが 1 つだけの Hello world プログラムの例です。

kivy.appからAppをインポートし、kivy.uix.buttonからButtonをインポートします。クラスTestApp ( App ): def build ( self ): return Button ( text = "Hello World" )TestApp () . run ()

Kv言語

Kv言語は、Kivyフレームワークにおけるユーザーインターフェースとインタラクションを記述するための言語です。他のユーザーインターフェースマークアップ言語と同様に、UI全体を簡単に作成し、インタラクションを組み込むことができます。例えば、ファイルブラウザと「キャンセル/ロード」ボタンを含む読み込みダイアログを作成するには、まずPythonでベースウィジェットを作成し、次にKvでUIを構築します。

main.py の場合:

クラスLoadDialog ( FloatLayout ): def load ( self , filename ): pass def cancel ( self ): pass

関連するKvでは次のようになります。

#:kivy 1.11.1<LoadDialog> : BoxLayout :サイズ: root.size位置: root.pos方向: "垂直"FileChooserListView : id :ファイルチューザーBoxLayout : size_hint_y :なし高さ: 30ボタン:テキスト: "キャンセル" on_release : root.cancel()ボタン:テキスト: "ロード" on_release : root.load(filechooser.path, filechooser.selection)

あるいは、レイアウト (ここでは Box レイアウト) とボタンを main.py ファイルに直接読み込むこともできます。

Google Summer of Code

Kivy はPython Software Foundation の主催でGoogle Summer of Codeに参加しました。

参照

参考文献