shi*_*jin 3 iphone internationalization quit
或"如何模拟按下主页按钮事件?"
我需要重新启动我的iPhone应用程序,我希望程序退出,因此用户只需要启动它.
如果我只是使用exit(0)某些更改将无法保存,就像用户通过按主页按钮退出一样.
语言更改需要重新启动.
相关代码:
- (void)onChangeLanguage: (id)sender {
NSArray *lang = [NSArray arrayWithObjects:((Whatever *)sender).newLanguage, nil];
[[NSUserDefaults standardUserDefaults] setObject:lang forKey:@"AppleLanguages"];
NSUserDefaults *defaults = [NSUserDefaults standardUserDefaults];
NSArray *languages = [defaults objectForKey:@"AppleLanguages"];
NSString *currentLanguage = [languages objectAtIndex:0];
NSLog(@"Current language: %@", currentLanguage);
// ***
}
Run Code Online (Sandbox Code Playgroud)
如果用户使用主页按钮重新启动,则语言将更改.
如果// ***替换为exit(0),则语言不会更改.
调用exit(0)是从代码中退出程序的唯一合法(但非常不推荐)的方法.
作为一种可能的解决方法,您可以显示UIAlertView没有无法解除的按钮(强制用户手动退出程序)并告诉用户他必须这样做才能应用您的更改.
| 归档时间: |
|
| 查看次数: |
3392 次 |
| 最近记录: |