Pythonista3でのUI制御方法


Pythonista3でUI制御を練習する記録

iPhoneでpythonを勉強する為にPythonista3を購入。
公式ドキュメントで勉強した事の備忘録です。

そもそもiphoneだとpresentの種類は選べず全画面表示になる事も上記ドキュメントで知りました。。。

Pythonista3でUIを練習する手順

  • プラスマークをクリックして「Script with UI」を選択
  • 二つファイルが生成される(.pyと.pyuiの二種類)
  • .pyuiと.pyの編集

公式の.py練習用コード解説

import ui

def button_tapped(sender):
    sender.title = 'Hello'

view = ui.View()                                      # ①
view.name = 'Demo'                                    # ②
view.background_color = 'white'                       # ③
button = ui.Button(title='Tap me!')                   # ④
button.center = (view.width * 0.5, view.height * 0.5) # ⑤
button.flex = 'LRTB'                                  # ⑥
button.action = button_tapped                         # ⑦
view.add_subview(button)                              # ⑧
view.present('sheet')                                 # ⑨

①view = ui.View() 
vビューの生成

②view.name = 'Demo' 
view変数の名前

③view.background_color = 'white'
viewの色

④button = ui.Button(title='Tap me!')新
しいボタンの生成とキーワード引数の設定

⑤button.center = ()・・・・・
親のviewサイズからボタンの位置を指定

⑥button.flex = 'LRTB'
ボタンのサイズを、可変にする

⑦button.action = button_tapped
ボタンを使うための関数を設定

⑧view.add_subview(button)
このメソッドでコンテナビューの子になるらしい意味不明

⑨view.present('sheet')
画面に表示するメソッド。iPadだとカスタムが選べる。iPhoneだと常に全画面とのこと

おわりに

このあとUIエディタで、より簡素なプログラムで操作ができる事がわかりましたが
今回のソースを理解することにより制御が少々わかりました。