[英]Is there the official way to set fallback localized language in iOS app?
在iOS應用開發中,我找不到設置后備本地化語言的官方方法。 當我的應用程序的本地化版本中未包含用戶語言時,我想使用英語。 我嘗試了使用基礎國際化的方法,但是,並非所有語言都適用。 現在,將base.lproj替換為en.lproj,只有添加到我的應用程序中的語言才能正常工作,而其他語言則無法正常工作。 (不使用英語,而是在選擇俄語時使用韓語...)
有些網站說,將備用語言設置為“本地化本地開發區域”,但是效果不佳。 你有什么主意嗎? 謝謝。
您的問題聽起來很像我遇到的問題。 在我最終提出這種方法之前,花了很多時間來尋找解決方案(我的問題鏈接和下面的文字)。
無法從BASE文件檢索iOS Localizable.strings
找到一種確定我是否具有當前所選語言的本地化文件的方法,如果沒有,我可以從基本本地化文件中提取。
NSString *path = [[NSBundle mainBundle] pathForResource:[[NSLocale preferredLanguages] objectAtIndex:0] ofType:@"lproj"];
if (path == nil)
{
path = [[NSBundle mainBundle] pathForResource:@"Base" ofType:@"lproj"];
}
NSLocalizedStringFromTableInBundle(@"TAB_TITLE_Camera", @"Localizable", [NSBundle bundleWithPath:path], @"");
簡單的解決方案可以滿足我的所有需求。
在iOS 6.1和iOS 7.1上均可使用。
如果您沒有當前所選語言的本地化文件,或者要指定一種特定的語言,則只需為pathForResource設置值,就應該獲得所需的語言。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.