2017-01-23 78 views

回答

2

您需要使用适配器并在xml文件中填入tha数组。

在xml中指定数组的名称createFromResource方法(第二个参数)。

ArrayAdapter<CharSequence> adapter = ArrayAdapter.createFromResource(this, R.array.my_array, android.R.layout.simple_spinner_item); 
adapter.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item); 
mySpinner.setAdapter(adapter); 
+0

我的数据在string.xml文件中。我如何获得它到Java来填充它? –

+0

你可以直接用我的答案来做。请看第一行的* createFromResource *方法 – adalPaRi

+0

啊好的。谢谢您的帮助 –

1

您可以从使用ArrayAdapter开始,它是以编程方式填充微调项目的简单类。

String data[]; 
//... do your stuff to get populate this array 
ArrayAdapter<String> spinnerArrayAdapter = new ArrayAdapter<String>(
      this, android.R.layout.simple_spinner_item, data); 
mySpinner.setAdapter(spinnerArrayAdapter); 

您还可以修改下拉项目的视图并通过覆盖此类别进一步对其进行自定义。

+0

但是我的数据是在strings.xml档案。我如何得到它在java中的字符串arrray –

+0

使用上下文类方法'getResources()。getStringArray(R.array.your_array)'获取字符串数组 –

+0

啊!好的谢谢。 :D –

2

你必须从文件中提取数据:

String[] testArray = getResources().getStringArray(R.array.testArray); 

然后,你有微调膨胀:

ArrayAdapter<String> spinnerArrayAdapter = new ArrayAdapter<String>(
      this, android.R.layout.simple_spinner_item, testArray); 
mySpinner.setAdapter(spinnerArrayAdapter);