飽きるまでは書く

Python覚えたい。Androidアプリ作ってみたい。

テキストボックスの追加

今日の目標はテキストボックス(テキストインプット)の追加とラベルの追加。

とりあえず完成したのが以下のソース。pydoroidでファイル名をつけるとデフォルトがnewfileなので、考えるのがめんどくさい時は基本的に数字を足してます。

 

newfile003.py

import japanize_kivy
from kivy.app import App
from kivy.uix.boxlayout import BoxLayout

class RootWidget(BoxLayout):
    pass

class Newfile003App(App):
     def build(self):
    return RootWidget()

if __name__ == '__main__':
    Newfile003App().run()

newfile003.kv

<RootWidget>

    BoxLayout:
        orientation: 'vertical'
        BoxLayout:
            canvas:
                Color:
                     rgba: 0,0,1,1
                Rectangle:
                    size: self.size
                    pos: self.pos
                Label:
                    text: '入力'
            TextInput:
                 size: self.size
                 pos: self.size
                 hint_text: 'test'

BoxLayout使った瞬間、エラーが多くて困った。

とりあえず、今日わかった事。

 

1つ目のクラス名は適当でいい。←本当はダメって知ってる。

 

2つ目のクラス名は、最初を小文字にしたAppの前までが、kvファイル名になる。

 

kvファイルの一行目は、1つ目のクラス名(BoxLayoutが引数のやつ)を書く。

 

orientation: 'vertical'

は、2行目に書いても意味はない。並べたい場所に並ぶように(同じ行下げの感じの所)書く。

 

今日お世話になったサイト

Python Kivyの使い方① ~Kv Languageの基本~ - Qiita

Kivyのボックスレイアウトの使い方とその仕様 | せなブログ

Kivyの1行入力ボックスの作成方法 - Qiita