[Android & Kotlin] EditText の文字を入力する

EditTextをKotlinで作ってみます。例として文字を入力、ボタンをタップすることにより TextView に表示させてみます。
 
as413k m11 - [Android & Kotlin] EditText の文字を入力する

Android Studio 4.1.3
API 30

 




EditText

 
EditTextは文字の入力を扱います。
とりあえず基本的なところを理解しておきましょう。

JavaでのEditTextはこちらを参照してください。

Androidアプリで文字入力を扱うにはEditTextを使います。以下は EditText に文字を入れ、ボタンをタップすることにより TextView に表示される簡単な例です。

 

 

EditTextの設定

 

activity_main/xml レイアウトファイルにEditTextの設定を記述します。
id を edit_text として作成すると、
 

 
EditTextから入力された文字を取り出すために

を使います
 

文字が入力されたことを確認してEditTextからButton を使って文字列を取り出すトリガーにします。
基本的には、このようにして使うことが可能です。
 

 

サンプルコード

 
まとめてみます。
 
MainActivity.kt
View Binding を使います

 
レイアウトです
activity_main.xml

 
リソースです
strings.xml

 
 
build.gradle

 
これで実行させてみましょう
 
ちょっと見づらいのと、レイアウトのEditTextが黄色くワーニングになっていてInputTypeやhintを入れないといけないので修正してみましょう。

 

inputType, hint

 
android:hint
android:autofillHints
android:inputType
を設定しないとwarningが出ます。
 
android:hint
ここに文字入力をしてくださいなどわかるように半透明の文字を出します。
入力し始めるとそれはなくなります。

 
android:autofillHints
これは以前に入力したものを再度使いたい場合など、ログインのID名などを表示してミスタイプを防ぐためのものです。
ただここを設定しただけではできないので、AutofillServiceなどの実装が必要です。ここでは扱わないので適当にwarningを消す目的だけの設定になっています。

 
android:inputType
以前はこれがなくてもwariningも出なかったのですが、想定されるものが数字か文字なのかなどによりキーボードの種類が変わります。

その他多数あります

  • text
  • textUri
  • number
  • phone
  • daterime
  • etc.

入力方法のタイプの指定
InputType | Android Developers
 
TextViewの文字サイズを大きくして背景色を明るいグレーで設定します。

activity_main.xml

 
hintをリソースに追加します。

これで完成です。

 

この方法は、昔のボタンしかなかった時のアプリでは有効ですが実際には困ることがあります。スマホの画面タッチはいつでも、どこでもできるので文字入力だけして、他のアイコンをタップしたり、Homeに戻ったりと文字を入力しても、確定してくれないユーザーもいるからです。スマホではそれができてしまいます
 
そんなケースにはリアルタイムに文字入力を監視するTextWatcher などを使います。
 

Reference:
EidtText | Android Developers
入力方法のタイプの指定
InputType | Android Developers




 

アプリ開発が上達するお勧め

アプリ開発を始めたけどわからないところがあり、誰かに聞きたいけど周りにはそんな人はいない…あるいは、会社で働いていて日中そんなに時間をとれないなど、オンラインのプログラミングスクールがいいでしょう。


TECH ACADEMY
Androidアプリコース



Code Camp
現役エンジニアによるオンラインプログラミングスクール【CodeCamp】


直接(ネットで)誰か分かる人に聞いた方が早く解決して、上達も早いと思います。


侍エンジニア塾
侍エンジニア塾 無料体験レッスン


シェアする

  • このエントリーをはてなブックマークに追加

フォローする