У меня есть вопрос strings.xml
Мое приложение на английском языке.
values/strings.xml
находится на английском языке
есть много других языков в приложении.
мои последние добавления строковых ключей находятся в values-en/strings.xml
, папке языкового стандарта, но не в values
языковой папке по умолчанию
как это повлияет на неанглийского пользователя, который загружает представление, которое пытается получить доступ к строкам, определенным только в values-en
? будет ли ОС найти строку в этом одном файле и отобразить ее на английском языке?
Это сложно для меня, потому что оно не находится в файле xml по умолчанию
спасибо за понимание
Представьте систему строк как последовательность условий if. Сначала мы проверяем язык пользователя, как только у нас есть, мы проверяем, содержит ли папка для этого конкретного языка строку, которую мы ищем. Если это так, мы возвращаем эту строку, иначе мы по умолчанию проверяем папку "values".
if (language.equals("en") {
stringsFolders = "values-en";
} else if (language.equals("es") {
stringsFolders = "values-es";
}
if (stringsFolder.contains(key) {
return stringsFolder.get(key);
} else if ("values".contains(key) {
return "values".get(key);
} else {
throw CantFindException();
}
Если строка принадлежит значениям-en, а испанский пользователь ищет ее, у них не будет возможности проверить папку значений-en, потому что они не подходят для нее. Альтернативно, папка "values" всегда проверяется по умолчанию, поэтому размещение ее там будет работать для всех языков
Синтаксис локализации локализации в strings.xml
German de values-de/strings.xml
Chinese zh values-zh/strings.xml
Czech cs values-cs/strings.xml
Dutch nl values-nl/strings.xml
French fr values-fr/strings.xml
Italian it values-it/strings.xml
Japanese ja values-ja/strings.xml
Korean ko values-ko/strings.xml
Polish pl values-pl/strings.xml
Russian ru values-ru/strings.xml
Spanish es values-es/strings.xml
Arabic ar values-ar/strings.xml
Bulgarian bg values-bg/strings.xml
Catalan ca values-ca/strings.xml
Croatian hr values-hr/strings.xml
Danish da values-da/strings.xml
Finnish fi values-fi/strings.xml
Greek el values-el/strings.xml
Hebrew iw values-iw/strings.xml
Hindi hi values-hi/strings.xml
Hungarian hu values-hu/strings.xml
Indonesian in values-in/strings.xml
Latvian lv values-lv/strings.xml
Lithuanian lt values-lt/strings.xml
Norwegian nb values-nb/strings.xml
Portuguese pt values-pt/strings.xml
Romanian ro values-ro/strings.xml
Serbian sr values-sr/strings.xml
Slovak sk values-sk/strings.xml
Slovenian sl values-sl/strings.xml
Swedish sv values-sv/strings.xml
Tagalog tl values-tl/strings.xml
Thai th values-th/strings.xml
Turkish tr values-tr/strings.xml
Ukrainian uk values-uk/strings.xml
Vietnamese vi values-vi/strings.xml