簡體   English   中英

是否有官方方法可以在iOS應用中設置后備本地化語言?

[英]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.1iOS 7.1上均可使用。


如果您沒有當前所選語言的本地化文件,或者要指定一種特定的語言,則只需為pathForResource設置值,就應該獲得所需的語言。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM