ListViewで文字列データをリスト表示してみる
最終更新日:2015-08-15
まずは図のように曜日(文字列データ)をリスト表示してみましょう。
順に見ていきましょう。
レイアウトにListViewを配置する
idをつけてListViewを配置します。幅と高さはmatch_parentにしておきます。
<ListView
    xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:id="@android:id/list"
    >
</ListView>
ArrayAdapterオブジェクトを作る
単純な文字列データをリスト表示する場合は、ArrayAdapterを使うと便利です。onCreate()で次のようにします。
@Bind(android.R.id.list) ListView mListView;
@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_main);
    // 中略
    ArrayAdapter<String> adapter = new ArrayAdapter<>(this,
            android.R.layout.simple_expandable_list_item_1);
    adapter.add("日曜日");
    adapter.add("月曜日");
    adapter.add("火曜日");
    adapter.add("水曜日");
    adapter.add("木曜日");
    adapter.add("金曜日");
    adapter.add("土曜日");
    mListView.setAdapter(adapter);
}
詳しく見ていきましょう。
ArrayAdapter<String> adapter = new ArrayAdapter<>(this,
        android.R.layout.simple_list_item_1);
ArrayAdapterのコンストラクタの第1引数はContextを渡します。第2引数は1行分のレイアウトをR.layout.xxxx形式で指定します。1行の単純なデータを表示したいときはandroid.R.layout.simple_list_item_1を指定します。
adapter.add("日曜日");
作成したArrayAdapterオブジェクトにデータを追加します。型をArrayAdapter<String>にしたので、ここでは文字列をaddします。
Adapterオブジェクトがデータを保持しているイメージは、できたでしょうか?


