Javaプログラミング/Javaプログラミング関連情報

レイアウトと基本部品の利用(4ページ目)

androidではXMLでレイアウトを作成します。この基本を理解しましょう。

執筆者:掌田 津耶乃

ボタンとテキストフィールド


では、実際にコンポーネントを利用してみることにしましょう。既に、テキストを表示するTextViewは使ってみましたから、この他に、テキストを入力する「EditText」と、プッシュボタンの「Button」を利用してみることにします。main.xmlを開き、レイアウトのXMLを修正してみましょう。

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
  android:orientation="vertical"
  android:layout_width="fill_parent"
  android:layout_height="fill_parent"
  >
<TextView
  id="@+id/text"
  android:layout_width="fill_parent"
  android:layout_height="wrap_content"
  android:text="お名前は?"
  />
<EditText
  id="@+id/edit"
  android:layout_width="fill_parent"
  android:layout_height="wrap_content"
  />
<Button
  id="@+id/button"
  android:layout_width="100px"
  android:layout_height="wrap_content"
  android:text="click"
  />
</LinearLayout>


これで、3つのコンポーネントを組み込むことができました。新たに登場したEditTextもButtonも、属性などは特に新しいものはありません。ただし、今回は3つのコンポーネントともに、こういう項目が追加されています。

id="@+id/text"


これはTextViewのものですが、他の2つも同様に「id="@+id/○○"」といった項目が追加されていることがわかるでしょう。これは、コンポーネントにIDを追加する属性です。このID属性は、書き方に少々クセがあります。必ず、 "@+id/名前" という形で記述しなければならないのです。

このように記述すると、ファイルを保存した際に自動的にR.javaが更新されます。R.javaを開いてみてください。このように変更されているはずです。

package jp.allabout.android;

public final class R {
  public static final class attr {
  }
  public static final class drawable {
    public static final int icon=0x7f020000;
  }
  public static final class id {
    public static final int button=0x7f050002;
    public static final int edit=0x7f050001;
    public static final int text=0x7f050000;
  }
  public static final class layout {
    public static final int main=0x7f030000;
  }
  public static final class string {
    public static final int app_name=0x7f040000;
  }
}


「id」というクラスが作成され、その中に「button」「edit」「text」というフィールドが自動生成されていることがわかります。これは、作成したコンポーネントをJavaのソースコード内から利用できるようにするために必要な処理なのです。――これで、レイアウトは作成できました。後は、ソースコードを修正して、ボタンをクリックしたときにちょっとした処理をさせることにしましょう。


  • 前のページへ
  • 1
  • 3
  • 4
  • 5
  • 6
  • 次のページへ

あわせて読みたい

あなたにオススメ

    表示について

    カテゴリー一覧

    All Aboutサービス・メディア

    All About公式SNS
    日々の生活や仕事を楽しむための情報を毎日お届けします。
    公式SNS一覧
    © All About, Inc. All rights reserved. 掲載の記事・写真・イラストなど、すべてのコンテンツの無断複写・転載・公衆送信等を禁じます