我试图本地化我的iPad应用程序(XCode 4.6.3,ARC,Storyboards,iOS 6.2)。我有一些非常长的“键”(超过200个字符长)用于UIWebView popover中的HTML ...运行应用程序时,没有显示任何HTML翻译,而是使用应用程序中的实际HTML“键” (不是Localized.strings文件中的那个;我修改了应用程序和Localized.strings文件中的“key”,应用程序的“key”是显示的内容)。
我开始相信“关键”的长度是问题所在。有没有办法可以缩短密钥,也许它可以指向不同的文件或其他东西?或者将翻译后的HTML放入.plist?
答案 0 :(得分:0)
我想出来......以防其他人有相同/类似的问题;我把html放到一个文件中,每个语言一个...然后这是我用来加载文件的代码:
- (void)viewDidLoad {
[super viewDidLoad];
// determine what the language for this locale is...
NSURL *indexURL;
NSString *sysLangCode = [[NSLocale preferredLanguages] objectAtIndex:0];
// do we support this language?
if([sysLangCode isEqualToString:@"en"] || [sysLangCode isEqualToString:@"de"] || [sysLangCode isEqualToString:@"it"] ||
[sysLangCode isEqualToString:@"es"] || [sysLangCode isEqualToString:@"fr"] || [sysLangCode isEqualToString:@"ja"] ||
[sysLangCode isEqualToString:@"zh-Hant"] ) {
indexURL = [[NSBundle mainBundle] URLForResource: [NSString stringWithFormat:@"instRST-%@", sysLangCode]
withExtension:@"html"]; // contatenate the language code to the filename
}
else
indexURL = [[NSBundle mainBundle] URLForResource: @"instRST-en" withExtension:@"html"]; // make 'en' the default
[webView loadRequest:[NSURLRequest requestWithURL:indexURL]]; // load it...
}