Android Spinner使用ArrayList <String>

use*_*219 22 java android arraylist spinner android-spinner

到目前为止,我一直在使用来自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());
Run Code Online (Sandbox Code Playgroud)

我可以使用本地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());
Run Code Online (Sandbox Code Playgroud)

我知道上面的代码不起作用,但我想知道使用ArrayList-string工作的东西.

cod*_*gic 54

是.只是不要打电话createFromResource()给你Adapter.请改用其中一个构造函数.就像是

ArrayAdapter<String> karant_adapter = new ArrayAdapter<String>(this,
     android.R.layout.simple_spinner_item, return_likes);
Run Code Online (Sandbox Code Playgroud)

这只是一个示例,您可能需要更改其他内容以使其工作,具体取决于哪些不起作用.但ArrayAdapter文档应该有所帮助.