平凡エンジニアからの出発

一に努力、二に理想、三に積小為大。

【AndroidTraining】Spinner 1

Lesson

Spinner 1

Mission

下記の仕様を満たすアプリを作りましょう。

  • Spinnerから選択した曜日を表示させる

Snap Shot

f:id:atuyan39:20210418230932p:plain:w300

Step by Step

  1. TrainingSpinnerActivityを新規に追加する
  2. レイアウトファイルにSpinner, TextViewを追加する
  3. Viewを取得
TextView textView = findViewById(R.id.spinner_1_text_view);
Spinner spinner = findViewById(R.id.spinner_1_spinner);

4 . SpinnerにセットするAdapterを作成する

ArrayAdapter<CharSequence> adapter = ArrayAdapter.createFromResource(this,
        R.array.spinner_1_array, android.R.layout.simple_spinner_dropdown_item);
adapter.setDropDownViewResource(android.R.layout.simple_dropdown_item_1line);

5 . Spinnerの項目が選択された際のリスナーを登録する

spinner.setOnItemSelectedListener(new AdapterView.OnItemSelectedListener() {
    @Override
    public void onItemSelected(AdapterView<?> parent, View view, int position, long id) {
        CharSequence selected = (CharSequence) parent.getItemAtPosition(position);
        textView.setText(selected);
    }
    @Override
    public void onNothingSelected(AdapterView<?> parent) {
        // nop
    }
});

6 . SpinnerにAdapterをセットする

spinner.setAdapter(adapter);

Code

Spinner 1 · atuyan39/AndroidTraining@63481ba · GitHub

Reference

developer.android.com

Memo

アイテムの数が多いと、ちゃんとスクロールできるようにしてくれる。親切。
f:id:atuyan39:20210418231629p:plain:w300