Как отобразить текст и значение в списке Listpreference

#android #string #listpreference

#Android #строка #listpreference

Вопрос:

Я пытаюсь отобразить список Listpreference с обоими назначенными массивами. Массивы выглядят примерно так.

level_array

      <item name="level1">Level  1 -   Hi-Score: </item>
     <item name="level2">Level  2 -   Hi-Score: </item>
  

value_array

      <item name="level1">5</item>
     <item name="level2">10</item>
  

когда я вызываю listpreference, я бы хотел, чтобы он отображал обе строки вместе. Возможно ли это?

IE будет отображать список следующим образом

ЗАГОЛОВОК СПИСКА

Уровень 1 — Hiscore 5

Уровень 2 — Hiscore 10

и т.д.

Вторичный вопрос, я предполагаю, что значения value_array можно изменять с помощью кода, чтобы я мог сохранить там разные значения позже?

Спасибо

Ответ №1:

используйте ListPreference, используйте что-то вроде этого

 <ListPreference
    android:title="Weather"
    android:summary="You can simulate the weather"
    android:key="listPref"
    android:entries="@array/level_array"
    android:entryValues="@array/value_array" />
  

Вы хотите изменить свой xml, я думаю, проблем не будет

Комментарии:

1. Да, именно так я определяю listpreference, но в listpreference отображаются только значения android:entries, я бы хотел показывать как :entries, так и :entryValues в каждой строке.

2. entryValues это значение, которое вы используете, после щелчка по вашим записям

3. используйте только level_array. Что-то вроде этого

4. <название элемента = «level1″> Уровень 1 — Приветственная оценка: 5 </ item> <название элемента =»level2»> Уровень 2 — Приветственная оценка: 10 </item>

5. А затем измените свой level_array