我使用localizable.strings文件设置了一个测试应用程序。在项目设置中,我添加了英语-英国、法语和法语-法国
“法语”字符串文件可以在应用程序中使用。当我选择“法国”语言时,我看到的是本地化版本。
但是,当我将language设置为English,并将Region Form设置为"United“时,我希望看到来自en-GB字符串文件的字符串。我在看英文版。很明显我漏掉了什么。当我使用“法语-法国”的时候也是一样。我希望它使用fr-FR版本的字符串文件。
我有法语-法国,法语-瑞士,等等。我如何实现这些?
谢谢你的帮助。
发布于 2014-09-19 14:49:51
我有一个问题,我通过显式地设置本地化目录(我的问题链接和下面的文本)来解决这个问题。
iOS Localizable.strings not being retrieved from BASE file
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], @"");
如果您有一个要从中检索字符串的特定本地化目录,则可以替换
pathForResource:
使用en-GB、fr-FR或您需要的任何其他目录名称。
我相信它应该,或者至少应该,选择合适的本地化目录,但它似乎没有做到这一点,这就是为什么我提出了这个解决方案。
https://stackoverflow.com/questions/13729477
复制相似问题