apprendre_kivy
Ceci est une ancienne révision du document !
Table des matières
Kivy: l'exemple Apprendre Kivy
Avec python 3 exclusivement !
L'exemple Apprendre Kivy comprend en particulier
- Un Screen Manager et 3 écrans
- Un fichier de configuration avec chargement, modifications
- Du réseau avec Twisted TCP et Multicast Using Twisted inside Kivy
- Les scripts sont longs parce qu'il incluent de bonnes explications
- Scatter pour gérer le multitouch avec le tactile
- Il faut d'abord être à l'aise avec le Pong de la doc et avec A Simple Paint App pour pouvoir aborder cet exemple.
Comment chercher ?
- Dans la doc officielle, mais les chances de trouver sont quasi nulles.
- Dans un moteur de recherche: ça finit souvent par des posts sur stackoverflow, avec des réponses
médiocresfausses, uniquement motivées par le gain de points !
Une bonne solution: Les exemples des sources de kivy
Les sources de apprendre-kivy sur GitHub
- apprendre-kivy avec le apk
Comprend aussi:
- Un serveur pour recevoir les envois du téléphone: serverkivy.py réalisé avec kivy mais prévu pour tourner seulement sur PC.
- Des extraits des exemples de la doc officielle
Ressources
Installation de kivy
Remarques en désordre
- Pourquoi le *.kv ne fait pas ce que je lui dis de faire ?
Les objets héritent du précédent, qui héritent du précédent …
size_hint: None, None
coupe les héritages du size, mais si une valeur n'est pas définie, la valeur par défaut est appliquée: ex size = 100, 100
La commande magique, très surfaite !
Canvas: Clear
- Utiliser uniquement des BoxLayout et des Box plus complexes en dernier recours.
- Il est enfin possible de mettre des accents dans le kv !
Tout sur les fichiers kv
Tout sur les canvas
self.app
app est l'arguement qui permet d'accéder à une class depuis une autre
class ApprendreKivyApp(App): ... def on_start(self): reactor.listenTCP(tcp_port, TCPServerFactory(self)) # ce self est l'instance de cette classe # ce self est le premier argument de TCPServerFactory() donc app # équivaut à # TCPServerFactory(app=self)
appelle
class TCPServerFactory(Factory): def __init__(self, app): self.app = app
Permissions Internet
Compilation avec buildozer
Buildozer pour créer une application Android avec un script python exemple avec un Hello World.
- Ne pas mettre les modules de la bibliothèque standard python en requirements
Deboggage sur Android
pyjnius pour accéder aux datas Android
TODO travailler la page pyjnius
apprendre_kivy.1577962515.txt.gz · Dernière modification : 2020/01/02 10:55 de serge