2012年3月5日月曜日

Android GUI開発-部品の配置

AndroidのGUIを作るのに、ボタンを並べますが大抵の例は「垂直方向」か「水平方向」ばかりです。垂直と水平を混在させるにはどうしたらいいんだろうかと調べていたんですが、やっとわかりました。Eclipseの開発環境のマウスだけでやる方法はわかりませんでしたが、部品はマウスで配置して、後はXMLを直接編集することでできました。main.xmlはこんな感じになります。(最初にボタンを5個配置して、赤字部分をテキストで追加し3個のボタンだけ水平に配置しました。部品の配置方向を最初に"vertical"としておき、3個だけインデントして"horizontal"と定義してあるところがポイントです。)

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="fill_parent"
    android:layout_height="fill_parent"
    android:orientation="vertical" >

    <Button
        android:id="@+id/button1"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:text="A" />

    <LinearLayout android:orientation="horizontal" android:layout_width="wrap_content" android:layout_height="wrap_content">
    <Button
        android:id="@+id/button2"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:text="B" />

    <Button
        android:id="@+id/button3"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:text="C" />

    <Button
        android:id="@+id/button4"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:text="D" />
    </LinearLayout>

    <Button
        android:id="@+id/button5"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_gravity="center"
        android:text="E" />

</LinearLayout>

エミュレータで実行してみると以下の様になります。

こんな感じになります。

0 件のコメント:

コメントを投稿