Kivy (framework)
Kivy è un framework open source rilasciato sotto Licenza MIT utilizzato per lo sviluppo di applicazioni multi-touch e interfacce utente (UI) interattive. È basato su Python e supporta lo sviluppo su diverse piattaforme tra cui Linux, Windows, macOS, Android e iOS. Inizialmente nato come evoluzione del progetto PyMT (Python Multi-Touch), Kivy, ha ampliato le funzionalità di PyMT, migliorando il supporto multipiattaforma e aggiungendo nuovi strumenti e widget per creare interfacce utente più avanzate e interattive.[2][3] Kivy è il principale framework sviluppato dalla comunità Kivy.[4] Nel 2012, Kivy ha ricevuto una sovvenzione di 5000 dollari dalla Python Software Foundation per portare il framework su Python 3.3. Kivy supporta anche il Raspberry Pi, grazie a un finanziamento ottenuto tramite Bountysource, una piattaforma di crowdfunding per progetti open-source.[5] Kivy è un framework completo che fornisce tutti gli elementi necessari per creare un'applicazione. Include widget e vari componenti per lo sviluppo di interfacce utente interattive e dinamiche. Tra le principali componenti si trovano:
Esempio di codiceEcco il classico esempio di programma "Hello world" con un singolo pulsante: from kivy.app import App
from kivy.uix.button import Button
class TestApp(App):
def build(self):
return Button(text="Hello World")
TestApp().run()
Linguaggio KVIl linguaggio KV è un linguaggio di markup simile a CSS, creato appositamente per Kivy.[7] Viene utilizzato per definire l'aspetto e il comportamento delle interfacce utente in modo dichiarativo, separando la logica dell'applicazione dal design grafico.[8] Ad esempio, per creare una finestra di caricamento che includa un file browser e due pulsanti denominati "Annulla" e "Carica", si potrebbe procedere in due fasi:
Codice del file main.py: class LoadDialog(FloatLayout):
def load(self, filename): pass
def cancel(self): pass
Codice in linguaggio Kv associato: #:kivy 1.11.1
<LoadDialog>:
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)
In alternativa, il layout e i pulsanti possono essere caricati direttamente all'interno del file "main.py". Partecipazione al "Google Summer of Code"Kivy ha partecipato alle seguenti edizioni del Google Summer of Code (GSoC) sotto l'egida della Python Software Foundation: Voci correlate
Note
Altri progetti
Collegamenti esterni
|
Portal di Ensiklopedia Dunia