當設備UI語言不被應用程序支持時,是否有方法可以設置默認語言?本地化iOS中的字符串:默認(後備)語言?
例子: 我的應用程序本地化爲英語和德語:
// en.lproj:
"POWER_TO_THE_PEOPLE_BTN" = "Power";
"POWER_PLUG_BTN" = "Power";
// de.lproj:
"POWER_TO_THE_PEOPLE_BTN" = "Macht";
"POWER_PLUG_BTN" = "Spannung";
現在,如果我在設備上運行的應用程序設置爲Italian
應用程序將使用鑰匙串POWER_TO_THE_PEOPLE_BTN
和POWER_PLUG_BTN
UI語言。
必須有指定在這種情況下使用應用程序默認(後備)語言的一種方式。
從上面的例子,應該清楚,使用英文字符串作爲一個鍵將無法正常工作。
我現在看到的唯一選擇是使用NSLocalizedStringWithDefaultValue
而不是NSLocalizedString
。
回退語言是應用程序支持的[NSLocale preferredLanguages]中的第一種語言。它並不總是英文。如果您在設置中更改語言,它將移至列表頂部。 – Felix 2013-12-03 18:20:58
爲了擴大/改變這一點,後備語言是用戶最近在設置中選擇的語言,也是在應用程序包中表示的語言。 – hyperspasm 2014-10-12 15:28:24
Juan Pablo,感謝編輯 – 2016-05-16 16:55:35