androidでは、javascriptのようにdatepickerのような機能がないので、同じような
作業をするには、スピナーを使う必要があります。
今回は一つの画面に複数のスピナーが必要だったので、switchを使って次のように
まとめることにしました。
public void createAdapter(){ ArrayAdapter<CharSequence> adapterlocation; ArrayAdapter<CharSequence> adapterlanguage; Spinner upperspinner; Spinner underspinner; upperspinner = (Spinner) findViewById(R.id.planets_spinner); underspinner =(Spinner)findViewById(R.id.language_spinner); adapterlocation = ArrayAdapter.createFromResource( this, R.array.planets_array, R.layout.custom_spinner); adapterlocation.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item); upperspinner.setAdapter(adapterlocation); upperspinner.setOnItemSelectedListener(this); adapterlanguage = ArrayAdapter.createFromResource( this, R.array.language_array, R.layout.custom_spinner); adapterlanguage.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item); underspinner.setAdapter(adapterlanguage); underspinner.setOnItemSelectedListener(this); } @Override public void onItemSelected(AdapterView<?> parent, View view, int position, long id) { Spinner spinner = (Spinner) parent; switch(parent.getId()){ case R.id.planets_spinner : String getPlanets = spinner.getSelectedItem().toString(); break; case R.id.language_spinner : String getLanguage = spinner.getSelectedItem().toString(); break; } }
onItemSelected内の引数parentは、スピナーのidになっています。
このparentを使うことで識別することができます。