【Android】Spinnerの使い方
Spinner
を使用することで、プルダウンまたはダイアログでアイテムを複数表示することができます。
アイテムの取得方法も2通りあったので、それも含め以下に書きます。
レイアウトの作成
<Spinner android:layout_width="match_parent" android:layout_height="wrap_content" android:id="@+id/spinner" android:spinnerMode="dialog" />
プルダウン表示の場合はdialog
、プルダウン表示の場合はdropdown
をandroid:spinnerMode
に指定します
アイテムの設定
表示するアイテムを設定するにはAdapterを作成し、Supinnerにセットします。
// Adapterの作成 ArrayAdapter<String> adapter = new ArrayAdapter<String>(this, android.R.layout.simple_spinner_item); adapter.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item); // Adapterにアイテムを追加 adapter.add("red"); adapter.add("green"); adapter.add("blue"); Spinner spinner = (Spinner) findViewById(id.spinner); // SpinnerにAdapterを設定 spinner.setAdapter(adapter);
選択したアイテムの取得方法1
spinner.setOnItemSelectedListener(new AdapterView.OnItemSelectedListener() { @Override public void onItemSelected(AdapterView<?> parent, View view, int position, long id) { Spinner spinner = (Spinner) parent; // 選択したアイテムを取得 String item = (String) spinner.getSelectedItem(); // ログで確認 Log.v("spinner item", item); } @Override public void onNothingSelected(AdapterView<?> arg0) {// アイテムを選択しなかったとき } });
選択したアイテムの取得方法2
// レイアウトからSpinnerを取得 Spinner item = (Spinner) findViewById(R.id.spinner); // 選択したアイテムを取得 String selected = (String) item.getSelectedItem();
参考サイト:
スピナー(Spinner)を使用するには - 逆引きAndroid入門
Androidプログラミングメモ Spinner - arcanum_jpの日記