Intereting Posts
Создание пользовательских карт Google Откуда берутся местоположение и currentBestLocation? В Android Dev Guide (Получение пользовательского местоположения) Android-устройства не распознают подключенное оборудование с чипом FTDI Сделать editText потерять фокус на заднем нажатии Сервисы Google Play для Froyo Android ListView с CursorAdapter имеет неправильную позицию прокрутки после вызова Requery при добавлении новых элементов GCM против Socket в андроиде Курсор не отображается в EditText, когда динамически добавляется просмотр Android: как воссоздать панель действий при изменении фрагмента Предварительный просмотр камеры Android с использованием кода Grafika CameraCapture JodaTime – проверьте, есть ли LocalTime после и сейчас перед другим LocalTime Функция прокрутки меню навигационного ящика Как автоматически конвертировать if-else if для переключения Как использовать собственные библиотеки Android в Java с помощью eclipse? Метод FloatMath.sqrt () не найден

Не удается получить массив строк из XML

У меня есть список значений в моем XML-файле, который я бы хотел выбрать, основываясь на выборе счетчика. По какой-то причине использование строки массива для счетчика отлично работает, значения заполняются в счетчик. По какой-то причине я не могу получить значения второго массива для сохранения моей жизни, они находятся в том же файле, который не имеет ошибок, которые я могу найти. Вот как я пытаюсь их схватить:

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

Spinner заселен по-разному (ошибок нет в этой части):

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

Ошибка, которую я получаю:

"04-26 21: 41: 35.305: ERROR / AndroidRuntime (514): вызвано: android.content.res.Resources $ NotFoundException: Идентификатор ресурса массива строк # 0x7f050001"

Это относится непосредственно к строке «getResources». Кто-нибудь знает, почему это может произойти?

Изменить: Вот xml-файл (это просто)

 <?xml version="1.0" encoding="UTF-8"?> <resources> <string name="class_prompt">Choose a class</string> <string-array name="playerclass_array"> <item>Assassin</item> <item>Paladin</item> <item>Pirate</item> <item>Hell Mage</item> <item>Winter Witch</item> <item>Shadow Walker</item> <item>Underthief</item> <item>Red Warrior</item> <item>Haru Norda</item> </string-array> <string-array name="playerclassdesc_array"> <item>This is the Assassin</item> <item>This is the Paladin</item> <item>This is the Pirate</item> <item>This is the Hell Mage</item> <item>This is the Winter Witch</item> <item>This is the Shadow Walker</item> <item>This is the Underthief</item> <item>This is the Red Warrior</item> <item>This is the Haru Norda</item> </string-array> </resources> 

Solutions Collecting From Web of "Не удается получить массив строк из XML"

Я ненавижу это, когда сразу нахожу ответ!

По какой-то причине Android неправильно перекомпилировал XML-файл, в котором находился массив, поэтому после изменения имени и последующего его изменения он теперь работает. Поэтому мое решение состоит в том, что мне пришлось внести некоторые изменения в XML-файл, в котором находился массив, потому что он не перекомпилировался правильно, несмотря на то, что Eclipse говорил мне об этом.

Я пытаюсь сделать Cast в конструкторе ArrayAdapter или изменить тип элемента в ArrayAdapter.

 ArrayAdapter<String> adapter = ArrayAdapter.createFromResource( this, R.array.playerclass_array, android.R.layout.simple_spinner_item); 

Несколько раз я сталкивался с подобными проблемами. Я обнаружил, что использование Project | Чистый вариант в Eclipse, а затем восстановление моего проекта всегда решает их. Это то, что вы делаете, редактируя XML-файл; Вы заставляете Eclipse перестраивать свои ресурсы из XML-файла.