doc:appunti:prog:kivy
Differences
This shows you the differences between two versions of the page.
| Both sides previous revisionPrevious revisionNext revision | Previous revision | ||
| doc:appunti:prog:kivy [2019/02/25 12:24] – [Using the Widget Class] niccolo | doc:appunti:prog:kivy [2023/10/07 21:53] (current) – [Logging] niccolo | ||
|---|---|---|---|
| Line 69: | Line 69: | ||
| ===== A Real App With an ActionBar ===== | ===== A Real App With an ActionBar ===== | ||
| + | |||
| + | **kivywindowexample.py** | ||
| + | |||
| + | <code python> | ||
| + | # | ||
| + | from kivy.app import App | ||
| + | # | ||
| + | from kivy.uix.widget import Widget | ||
| + | |||
| + | class MyWidget(Widget): | ||
| + | pass | ||
| + | |||
| + | class KivyWindowExampleApp(App): | ||
| + | def build(self): | ||
| + | return MyWidget() | ||
| + | |||
| + | if __name__ == " | ||
| + | KivyWindowExampleApp().run() | ||
| + | </ | ||
| + | |||
| + | **kivywindowexample.kv** | ||
| + | |||
| + | < | ||
| + | < | ||
| + | font_size: 28 | ||
| + | color: 0,1,0,1 | ||
| + | size_hint: 0.3, 0.2 | ||
| + | |||
| + | < | ||
| + | BoxLayout: | ||
| + | size: root.size | ||
| + | orientation: | ||
| + | ActionBar: | ||
| + | pos_hint: {' | ||
| + | ActionView: | ||
| + | use_separator: | ||
| + | ActionPrevious: | ||
| + | title: " | ||
| + | with_previous: | ||
| + | ActionOverflow: | ||
| + | ActionButton: | ||
| + | text: " | ||
| + | ActionButton: | ||
| + | text: " | ||
| + | ActionButton: | ||
| + | text: "New Game" | ||
| + | FloatLayout: | ||
| + | MyButton: | ||
| + | text: "Pos 0, 0" | ||
| + | pos_hint: {' | ||
| + | MyButton: | ||
| + | text: " | ||
| + | pos_hint: {' | ||
| + | MyButton: | ||
| + | text: "Pos right-top" | ||
| + | pos_hint: {' | ||
| + | MyButton: | ||
| + | text: "Pos 0.5, 1.0" | ||
| + | pos_hint: {' | ||
| + | </ | ||
| + | |||
| + | {{.: | ||
| + | |||
| + | |||
| + | ===== Logging ===== | ||
| + | |||
| + | Like a plain Python program, it is possible for a Kivy app to produce some logging using the Kivy logger. The output will go, by default, to a file created into the app home directory, into the **files/ | ||
| + | |||
| + | <code python> | ||
| + | from kivy.logger import Logger, LOG_LEVELS | ||
| + | # Set the loglevel. The Android log file will be create into | ||
| + | # [app_home]/ | ||
| + | Logger.setLevel(LOG_LEVELS[' | ||
| + | Logger.info(' | ||
| + | </ | ||
| + | |||
| + | Without root privileges it is not possibile for another Android app (e.g. a file browser) to access the log directory. The Kivy **app home** will be into the adopted SD card, under something like this: | ||
| + | |||
| + | < | ||
| + | / | ||
| + | </ | ||
| + | |||
| + | In older Android versions (e.g. Android 8) the app home directory will be something like: | ||
| + | |||
| + | < | ||
| + | / | ||
| + | </ | ||
| + | |||
| + | Every time that the Kivy environment is initializated, | ||
| + | |||
| + | |||
doc/appunti/prog/kivy.1551093887.txt.gz · Last modified: by niccolo
