Programming Style

メニュー

初心者がアプリ開発者になるためのプログラミング学習サイト

[Android] EditText:テキストフィールドを表示する

android_android-edittext_01

テキストフィールドとは、ユーザーがテキストを入力するためのコンポーネントを指します。このテキストフィールドを表示させるためにはEditTextクラスか<EditText>タグを用います。ここではEditTextの基本的な使い方を説明します。

 

広 告

 

目次

前提条件

動作確認端末

  • Google Nexus 5 – 5.0.0 – API21(エミュレータ)

1. EditTextの概要

テキストフィールドを表示させるためにはEditTextクラスか<EditText>タグを用います。ユーザがEditTextを選択しテキスト入力する状態になると、システムが自動でソフトウェアキーボードを表示します。表示されたソフトウェアキーボードを使って、ユーザは文字を入力することができます。

 

EditTextクラスはTextViewの子クラスであるため、TextViewのメソッドを使用することができます。<EditText>タグは<TextView>タグの属性を使用することができます。

 

2. EditTextの使い方

EditTextをレイアウトXMLで使用するためには<EditText>タグを使用します。

 

<EditText>タグをサンプル使ったコード

<EditText
    android:id="@+id/edit_text"
    android:layout_width="match_parent"
    android:layout_height="wrap_content"/>

EditTextをJavaコードで使用する場合はEditTextクラスを利用します。

 

EditTextを使ったサンプルコード

final EditText editText = (EditText) findViewById(R.id.editText);

アプリを実行すると以下のようになります。

 

android_android-edittext_01

 

3. EditTextの背景にヒント文を表示する

EditTextが何を入力するためのものかをユーザに伝えるため、その背景にヒント文を表示させることが出来ます。ヒント文を表示させるためには、<EditText>タグにandroid:hint属性を設定します。

 

android:hint属性を使ったサンプルコード

<!-- @string/hintの実体は「ヒント文」 -->
<EditText
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    android:hint="@string/hint" />

javaコードからはsetHint()メソッドを使用して設定できます。

 

setHint()メソッドを使ったサンプルコード

// @string/hintの実体は「ヒント文」
final EditText editText = (EditText) findViewById(R.id.editText);
editText.setHint(@string/hint);

上記のコードでアプリを実行すると以下のようになります。

 

android_android-edittext_02

EditTextの背景に薄いグレー色でヒント文が表示されています。

 

4. 文字をデフォルトで設定する

EditTextはがデフォルトで文字を設定することができます。文字を設定するためには、android:text属性を使います。

 

android:text属性を使ったサンプルコード

<!-- @string/hintの実体は「ヒント文」 -->
<!-- @string/defaultの実体は「デフォルト」 -->
<EditText
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    android:hint="@string/hint"
    android:text="@string/default"/>

JavaコードからはsetText()メソッドを使います。

 

setText()メソッドを使ったサンプルコード

// @string/hintの実体は「ヒント文」
// @string/defaultの実体は「デフォルト」
final EditText editText = (EditText) findViewById(R.id.editText);
editText.setHint(@string/hint);
editText.setText(@string/default);

上記のコードでアプリを実行すると以下のようになります。

 

android_android-edittext_03

 

広 告