使用int []数组设置微调器的下拉列表

时间:2012-12-06 07:36:57

标签: android spinner android-arrayadapter

在我的应用程序中,我有一个微调器,用户可以在其中选择一个数字。我已经尝试了以下内容,但是它有效,但它在values.XML文件中需要string-array,这对我来说是不切实际的,因为我有几个具有不同范围(长度在80-100项之间)。 / p>

    ArrayAdapter<CharSequence> adapter = ArrayAdapter.createFromResource(this,
        R.array.number_array, android.R.layout.simple_spinner_item);
    spinner.setAdapter(adapter);

这有效,但需要这个;

<string-array name="number_array">
<item>1</item>
.....
</string-array>

所以我创建了一个int数组 -

    int [] intArray = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10};

但是创建像这样的数组适配器

    ArrayAdapter<CharSequence> adapter = ArrayAdapter.createFromResource(this,
        intArray, android.R.layout.simple_spinner_item);

有没有办法做到这一点,或者我在我的values.xml文件中遇到了很多长数字string-arrays

2 个答案:

答案 0 :(得分:1)

使用下面的代码

  String[] array = {"1", "2","3", "4","5","6","7","8","9","10"};
  ArrayAdapter<String> spinnerArrayAdapter = new ArrayAdapter<String>
  (this,android.R.layout.simple_spinner_item, array);

而不是

  ArrayAdapter<CharSequence> adapter = ArrayAdapter.createFromResource(this,
  intArray, android.R.layout.simple_spinner_item);

答案 1 :(得分:1)

好的,我解决了我的问题,感谢该问题的评论中提供的链接,首先使用此链接将我的int[]数组转换为字符串数组

然后我使用此链接中的答案将微调器的值设置为字符串数组