как извлечь атрибут name из массива string?


Привет, я создаю приложение для викторины. У меня есть следующий (values/)вопрос.xml

<?xml version="1.0" encoding="utf-8"?>
<resources>
<string-array name="question">
<item name="correct">A</item>
<item name="wrong">B</item>
<item name="wrong">C</item>
<item name="wrong">D</item>
</string-array>
</resources>

Я хотел бы задать вопрос с четырьмя возможными ответами, но когда я получу свои ответы на Java.. Я не знаю, какой ответ правильный. Поэтому я решил использовать атрибут name в тегах элементов, чтобы передать значение "правильный" или "неправильный" ответ. Есть ли в любом случае, чтобы получить имя вместе со значением тега?

Потому что когда я использую String [] test = res. getStringArray (R. array.вопрос); я могу только получить значение каждого элемента в моем массиве.

Или потому, что это мой первый раз в Android. есть ли другой подходящий подход для этого?

Спасибо

3 10

3 ответа:

Вам нужно использовать обработчик для синтаксического анализа xml. чтобы получить значение атрибута, используйте следующий код:

attributes.getValue("name")

Попробуйте эти ссылки для справки: Первый и второй

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

В Деятельности: String[] questionArray = getResources().getStringArray(R.id.question); тогда у вас есть

  • questionArray[0] - > A
  • questionArray[1] -> B
  • questionArray[2] - > C
  • questionArray[3] - > D