我想知道如何使我的应用程序 - 在XCode中开发 - 多语言。我阅读了很多关于本地化的教程,但我不希望用户通过Settings-> General-> International-> Language来更改应用程序的语言。相反,我希望我的应用程序出现在设置上,并从那里有一个选项来更改语言(只有应用程序的语言)。我找到了一个应用程序,但我找不到一个好的教程。
任何教程或者hinds,比如这种本地化方式的名称,对于继续我的应用程序非常有用。
我发现这可以通过自定义设置包完成。我想使用故事板进行本地化。
我创建了设置包但我不知道如何继续。
我在AppDelegate.m文件中使用了此代码,它可以在我的移动设备上运行。它会根据设置包更改我的移动应用程序的界面。但是1.我的移动应用程序在模拟器上崩溃,2。当你打开应用程序时使用此代码,然后按设备的中间按钮,转到设置并更改语言,然后返回应用程序,然后重新启动应用程序!我该如何解决这个问题?
- (void)applicationDidBecomeActive:(UIApplication *)application
{
[[NSUserDefaults standardUserDefaults] synchronize];
NSArray* appleLanguages = [[NSUserDefaults standardUserDefaults] arrayForKey:@"AppleLanguages"];
NSString* currentLanguage = [[NSUserDefaults standardUserDefaults] stringForKey:@"language"];
if ([appleLanguages[0] rangeOfString:currentLanguage].location != 0)
{
[[NSUserDefaults standardUserDefaults] setObject:@[currentLanguage] forKey:@"AppleLanguages"];
[[NSUserDefaults standardUserDefaults] synchronize];
exit(0);
}
}
答案 0 :(得分:0)
我为我的客户遇到了同样的问题:根据参数更改设置,无需重新启动应用程序,也无需更改设备名称。 然后我决定用一些约束创建我自己的本地化类:
您可以在此处找到它:https://github.com/micazeve/iOS-CustomLocalisator。任何反馈都表示赞赏,如果需要,我愿意提供帮助。