1

我需要动态生成微调器弹出窗口中的值。

具体来说,我正在显示供用户选择的年份列表。年份是当前年份 + 未来 12 年。

如果我使用 strings.xml 来制作一个字符串数组,那么我已经手动输入了该数组中的列表项。几年后,它仍然会显示更老的无关年份。我将不得不推送更新或其他东西。瘸。

我知道如何使用整数形式获取当前年份

int thisYear = Calendar.getInstance().get(Calendar.YEAR);

但我需要用今年 + 未来几年填充一个数组。这很容易做到,但 Spinner 的适配器类型都不想采用 int 数组或字符串数​​组。

我需要一个显示动态生成的项目的微调器。strings.xml 包含预先输入的列表项,所以我不能使用它。

帮助?

4

2 回答 2

1

您是否尝试过一次将它们添加为整数的字符串化版本?

我还没有尝试编译这个,但这样的事情应该可以工作:

int thisYear = Calendar.getInstance().get(Calendar.YEAR);
for (int i = 0; i < 12; i++) {
  adapter.add(Integer.toString(thisYear + i));
}

然后如果你需要它们作为 int 的出路,使用Integer.parseInt()

于 2011-04-04T17:10:33.857 回答
0

您可以扩展 SpinnerAdapter(或 BaseAdapter 或 ArrayAdapter)类并使用它们做任何您需要的事情。

于 2011-04-04T17:11:48.760 回答