iOS:如何处理美国居民的特定资源(en_US)?

时间:2012-08-15 16:58:00

标签: ios localization internationalization

我正在开发一个必须拥有不同名称和不同名称的iOS应用  美国居民的图像(不同的品牌名称)。

我定义了一个en-US.lproj代表,但它从未使用过。当我模拟美国居民时,我有:[[NSLocale currentLocale] locale localeIdentifier] => 'en_US',但使用了en.lproj。 我试图改变(在Xcode中)“本地化本地开发区域”,但它不会改变任何东西。

我对法语本地化没有任何问题。

我可以使用代码但不能使用应用名称或Default.png。

如何让en-US.lproj工作?

感谢。

2 个答案:

答案 0 :(得分:0)

我用这个答案解决了部分问题:

iPhone App Localization - English problems?

但是,由于“iPhone本地化(或本地化?)没有注意到用户设置的区域”,我无法对BundleDisplayName或Default.png做任何事情。

答案 1 :(得分:0)

更新:您还应该知道,如果您更改了语言/区域设置,则可能需要重新启动手机才能使应用程序使用正确的区域设置!

我通过将基本语言设置为英语并在main.m中调用它来修复它:

int main(int argc, char * argv[]) {
    @autoreleasepool {
        [[NSUserDefaults standardUserDefaults] setObject:[NSArray arrayWithObjects:[[NSLocale currentLocale] localeIdentifier], nil] forKey:@"AppleLanguages"];
        return UIApplicationMain(argc, argv, nil, NSStringFromClass([AppDelegate class]));
    }
}