Словарь в ресурсах Android - PullRequest
       1

Словарь в ресурсах Android

2 голосов
/ 21 февраля 2012

Есть ли способ использовать словарь в ресурсах Android. Я не смог найти в файле String.xml ничего о словаре, и в файле с возможностью поиска есть много других полей, которые мне не нужны.

Отредактировано: в C # и Visual Studio мы можем добавить словарь к ресурсам, а также строку или int, однако я не смог найти никакой опции для добавления словаря к ресурсам, и только строка и строковый массив или целое число доступны на андроид ресурсы.

Ответы [ 2 ]

10 голосов
/ 18 февраля 2015

возможно, уже поздно ответить, но вы можете использовать что-то вроде этого:

res / strings.xml

<string-array name="tags">
   <item>KEY_A:Some string value 1</item>
   <item>KEY_B:Some string value 2</item>
   <item>KEY_C:Some string value 3</item>
</string-array>

Здесь символ ":" обозначает разделитель между парами ключ-значение в массиве строк.

А затем где-то в коде (например, onCreate () ):

@Override
public void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.main);

    String[] tags = getResources().getStringArray(R.array.tags);
    for(String tag : tags) {
        String[] pair = tag.split(":");

        String key = pair[0];
        String value = pair[1];

        // do whatever you want with key and value
    }
}

Этот подход хорош, если у вас есть простые данные, для более сложных данных лучше использовать файлы res / raw с объектами json, как описано другими парнямивыше.

2 голосов
/ 12 марта 2012

Нет такого типа ресурса.Вы должны поместить произвольный файл в res / raw / и импортировать его вручную в HashMap.

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