web-dev-qa-db-ja.com

Android ArrayList <String>を使用したスピナー

これまで、XML文字列配列のスピナーの値を次のように使用していました。

Spinner karant_sp; 
karant_sp = (Spinner) findViewById(R.id.spinner1); 
ArrayAdapter<CharSequence> karant_adapter = ArrayAdapter.createFromResource(this, R.array.karant_list, Android.R.layout.simple_spinner_item);
karant_adapter.setDropDownViewResource(Android.R.layout.simple_spinner_dropdown_item);
karant_sp.setAdapter(karant_adapter);
karant_sp.setSelection(0);
karant_sp.setOnItemSelectedListener(new select_karant());

ローカルのJava ArrayList-Stringをドロップダウンメニューに表示するアイテムのリストとして使用できますか?

何かのようなもの:

Spinner karant_sp; 
ArrayList<String> return_likes = new ArrayList<String>();
return_likes.add("Hello");
return_likes.add("world");
karant_sp = (Spinner) findViewById(R.id.spinner1); 
ArrayAdapter<CharSequence> karant_adapter = ArrayAdapter.createFromResource(this, return_likes, Android.R.layout.simple_spinner_item);
karant_adapter.setDropDownViewResource(Android.R.layout.simple_spinner_dropdown_item);
karant_sp.setAdapter(karant_adapter);
karant_sp.setSelection(0);
karant_sp.setOnItemSelectedListener(new select_karant());

上記のコードが機能しないことは知っていますが、ArrayList-stringを使用して機能するものを知りたいです。

22
user2901219

はい。 AdaptercreateFromResource()を呼び出さないでください。代わりにコンストラクターのいずれかを使用してください。何かのようなもの

ArrayAdapter<String> karant_adapter = new ArrayAdapter<String>(this,
     Android.R.layout.simple_spinner_item, return_likes);

これは、動作していないものに応じて、動作させるために何か他のものを変更する必要があるかもしれない単なる例です。しかし、 ArrayAdapter Docs が役立つはずです。

53
codeMagic