我做了一個本地化爲兩種語言(英語和丹麥語,英語爲默認)的ios應用程序。
我用兩個子文件en和da製作了Localizable.strings。
一切都應該正確,我看到英文文本加載罰款字符串文件。但丹麥人不。ios可本地化的字符串不工作
我試圖通過下面的代碼檢查首選語言,它是丹麥語。
[[NSLocale preferredLanguages] objectAtIndex:0];
我試過乾淨+刪除和重建沒有運氣。
我知道Localizable.strings文件正在工作,因爲它正在獲取英文文本。我知道它通過上面的代碼行來看到丹麥語的本地化。 我錯過了什麼?
我想補充兩個例子:從EN
:
"YesButton" = "Done";
"NoButton" = "Not yet!";
"NextButton" = "Next";
"BackButton" = "Back";
"EditButton" = "Edit";
"DoneButton" = "Done";
和丹麥:
"YesButton" = "Færdig";
"NoButton" = "Ikke endnu!";
"NextButton" = "Næste";
"BackButton" = "Tilbage";
"EditButton" = "Redigér";
"DoneButton" = "Færdig";
和獲取文本的代碼是:
[yesButton setTitle:NSLocalizedString(@"YesButton", nil) forState:UIControlStateNormal];
即使preferredLang是da(丹麥語),它也會返回「完成」 !
希望有人有一個想法? :)
在此先感謝。
編輯:::
實際的丹麥 - 丹麥本地化出了問題。我不知道蘋果是否更新了它或者它做了什麼,但是它從被稱爲「丹麥 - 丹麥」變爲「丹麥」。 做了一個全新的丹麥語本地化並刪除了它的舊版本!瘋狂的事情。讓你撓頭!
您是否在英文和丹麥文件中使用相同的密鑰? – sixthcent
是的,當然......關鍵是當然是相同的,不同的文字。 –
你確定你正在獲得英文版本,而不是簡單的默認文本? –