Android создает динамический массив строк - PullRequest
2 голосов
/ 03 апреля 2011

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

IЯ не уверен, как заставить переменные редактировать XML, любая оценка приветствуется

Пояснение: я отредактировал Res> Values> strings.xml, чтобы получить список лет.Я вручную ввел годы в элементе списка,

это будет: элемент списка 2011 элемент списка 2011 элемент списка 2013 2013 ..........

, но в2012 год, более старые годы не будут иметь значения, поэтому мне нужно будет восстановить этот массив строк.Есть ли способ сделать типизированные годы переменными?

такими, как это было бы: list-item YEAR list-item YEAR + 1 list-item YEAR + 2

и функция вjava сообщит списку, что это за значения, или что-то в этом роде

Ответы [ 2 ]

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

Я не уверен, в чем проблема. Возможно, вы не знаете, как сделать в Java то, что вы ранее делали в XML?

Создать ArrayList лет очень просто. Это может поддержать ListView или Spinner с помощью ArrayAdapter.

ArrayList<Integer> years = new ArrayList<Integer>();
int thisYear = Calendar.getInstance().get(Calendar.YEAR);
for (int i = 1990; i <= thisYear; i++) {
    years.add(i);
}
1 голос
/ 03 апреля 2011

Как только вы скомпилируете свой apk и он подписан, он запечатывается.На этом этапе нет возможности редактировать XML.Ваш ответ будет состоять в том, чтобы использовать одну из многих функций датирования Java, которые извлекают год (ы) на основе уже понятных календарных дат.

Если у вас есть пример, разместите его здесь

...