我有一个个性化的微调器(使用一个使用个性化xml布局文件的适配器)
我想传递给他一个字符串数组,以编程方式创建,而不是传递strings.xml的典型硬编码字符串数组......但我不能!如果我尝试传递一个字符串数组,eclipse告诉我他需要从资源中引用一个项目(来自strings.xml的硬编码字符串数组)
我也尝试用另一种方式回答:Android: Create spinner programmatically from array
但这种方式对我来说不起作用,因为这种方式必须使用默认布局android.R.layout.simple_spinner_item
,我不会使用该布局,我需要使用我的个性化布局(R.layout.spinner_layout
) ,并且该方法不允许我为微调器使用个性化布局
这是我的代码:
String[] teams=(String[])Primera.getTeams().toArray();
ArrayAdapter adapter = ArrayAdapter.createFromResource(this, R.array.teams_array, R.layout.spinner_layout);
adapter.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item);
TeamsSpinner.setAdapter(adapter);
TeamsSpinner.setOnItemSelectedListener(new MyOnItemSelectedListener());
我需要将R.array.teams_array
改为teams
,但我不能,因为我告诉某些阵容的原因
任何人都可以帮助我吗?
感谢
答案 0 :(得分:2)
您不必使用android.R.layout.spinner_item
等,就像您引用的问题中使用的内容一样。您可以将自己的布局xml用于微调项目。
您不必使用ArrayAdapter.createFromResource()
即可使用:
ArrayAdapter adapter = new ArrayAdapter(this, R.id.your_custom_spinner_item, teams);