Androidアプリの画面部品 ~ LinearLayout/ラジオボタン/ドロップダウンリスト/リストビュー
Android Studio 2で始めるアプリ開発入門 第4回
ドロップダウンリスト
次に紹介するのは、ドロップダウンリストです。Androidではドロップダウンリストを表すタグは<Spinner>タグです。activity_view_sample.xmlファイルの<RadioGroup>の閉じタグの後に以下のコードを追加します。
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
~省略~
</RadioGroup>
<Spinner
android:id="@+id/spCurryList"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:background="#ffffff"
android:entries="@array/sp_currylist"
android:paddingBottom="5dp"
android:paddingTop="5dp"/>
<Button
~省略~
ここで、Spinner用の表示文字列をstrings.xmlに追加します。今回は、今までの<string>タグと違うタグを追加します。以下のタグを<resources>の閉じタグの前に追加してください。
<?xml version="1.0" encoding="utf-8"?>
<resources>
~省略~
<string-array name="sp_currylist"> (1)
<item>ドライカレー</item>
<item>カツカレー</item>
<item>ビーフカレー</item>
<item>チキンカレー</item>
<item>シーフードカレー</item>
<item>キーマカレー</item>
<item>グリーンカレー</item>
</string-array>
</resources>
入力が終了し、特に問題がなければアプリを実行してみてください。以下のような画面が表示されれば成功です。
「ドライカレー」と表示されている部分をタップすると以下のようにドロップダウンリストが表示されます。
この<Spinner>タグで注目したいのは、そのリストデータです。ドロップダウンリストで使われるデータというのは、配列といえます。このデータをアクティビティ内でJavaコードで記述してももちろんいいのですが、今回のサンプルのような固定の文字列配列の場合、strings.xmlに記述して、それを利用することもできます。その際に使用するのが<string-array>タグとandroid:entries属性です。
手順としては、まず、strings.xmlに<string-array>タグを記述し、データひとつひとつを<item>タグで記述します(リスト6 strings.xmlの(1))。その後、android:entries属性の「@array/…」の「…」の部分に<string-array>タグのname属性を記述します。
例えば、DBのデータなど、データが動的に変化するリストの場合は、もちろんアクティビティでデータを用意する必要があります。
この記事は参考になりましたか?
- Android Studio 2で始めるアプリ開発入門連載記事一覧
- この記事の著者
-
WINGSプロジェクト 齊藤 新三(サイトウ シンゾウ)
<WINGSプロジェクトについて>有限会社 WINGSプロジェクトが運営する、テクニカル執筆コミュニティ(代表 山田祥寛)。主にWeb開発分野の書籍/記事執筆、翻訳、講演等を幅広く手がける。 2026年時点での登録メンバは約50名で、現在も執筆メンバを募集中。興味のある方は、どしどし応募頂きたい。著書、記事多数。 RSS X: @WingsPro_info(公式)、@WingsPro_info/wings(メンバーリスト) Facebook <個人紹介>WINGSプロジェクト所属のテクニカルライター。Web系製作会社のシステム部門、SI会社を経てフリーランスとして独立。屋号はSarva(サルヴァ)。HAL大阪の非常勤講師を兼務。
※プロフィールは、執筆時点、または直近の記事の寄稿時点での内容です
-
山田 祥寛(ヤマダ ヨシヒロ)
静岡県榛原町生まれ。一橋大学経済学部卒業後、NECにてシステム企画業務に携わるが、2003年4月に念願かなってフリーライターに転身。Microsoft MVP for Visual Studio and Development Technologies。執筆コミュニティ「WINGSプロジェクト」代表。主な著書に「独習シリーズ(Java・C#・Python・PHP・Ruby・JSP&サーブレットなど)」「速習シリーズ(ASP.NET Core・Vue.js・React・TypeScript・ECMAScript、Laravelなど)」「改訂3版JavaScript本格入門」「これからはじめるLaravel実践入門」「はじめてのAndroidアプリ開発 Kotlin編 」他、著書多数。
※プロフィールは、執筆時点、または直近の記事の寄稿時点での内容です
この記事は参考になりましたか?
この記事をシェア
