Android генерирует список спиннеров без XML или R.array - PullRequest
1 голос
/ 04 апреля 2011

Мне нужно, чтобы значения во всплывающем окне счетчика создавались динамически.

В частности, я показываю список лет, из которых пользователь может выбирать.Год - это текущий год + 12 лет в будущем.

Если я использовал strings.xml для создания массива строк, то я вручную набрал элементы списка в этом массиве.Через несколько лет он все еще будет показывать неактуальные годы старшего возраста.Я должен был бы выдвинуть обновление или кое-что.Хром.

Я знаю, как получить текущий год в целочисленной форме, используя

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

, но мне нужно заполнить массив этим годом + будущими годами.Это легко сделать, но ни один из типов адаптеров для Spinner не хочет использовать int-массивы или строковые массивы в этом отношении.

Мне нужен спиннер, который отображает элементы, которые были сгенерированы динамически.Strings.xml содержит предварительно напечатанные элементы списка, поэтому я не могу его использовать.

Справка?

Ответы [ 2 ]

1 голос
/ 04 апреля 2011

Вы пытались добавить их как строковые версии целых по одной за раз?

Я не пробовал компилировать это, но что-то вроде этого должно работать:

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

А потом, если вам нужно вернуть их как int на выход, используйте Integer.parseInt()

0 голосов
/ 04 апреля 2011

Вы можете расширить класс SpinnerAdapter (или BaseAdapter или ArrayAdapter) и делать с ними все, что вам нужно.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...