首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >是否有可能在iOS上“重定向”本地化?

是否有可能在iOS上“重定向”本地化?
EN

Stack Overflow用户
提问于 2013-12-10 07:49:59
回答 2查看 100关注 0票数 0

我想要的很简单:

我的应用程序只有两种语言:英文和简体中文。我希望如果系统语言是简体或繁体中文,那就使用简体中文,否则就使用英文。

似乎大多数用户不知道他们可以设置他们的次要首选语言。所以我不能依赖他们。

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2013-12-10 08:00:49

您可以使用此代码检索用户语言并设置应用程序语言:

代码语言:javascript
复制
NSUserDefaults *defaults = [NSUserDefaults standardUserDefaults];
// Reset system defaults to get the complete language list.
[defaults removeObjectForKey:@"AppleLanguages"];
// Default language choosen by user.
NSString *defLanguage = [defaults objectForKey:@"Language"];
NSArray *sysLangugages = [defaults arrayForKey:@"AppleLanguages"];
// System default language: first element of array.
NSString *sysLanguage = [sysLangugages objectAtIndex:0];
NSArray *array = [NSArray arrayWithObjects:defLanguage, sysLanguage, nil];
LocalizationSetLanguage(defLanguage);
[defaults setObject:array forKey:@"AppleLanguages"];

 //To set and get the saved language
 // in the .h
#define LocalizationSetLanguage(language) \
[[LocalizationSystem sharedLocalSystem] setLanguage:(language)]

//in the .m
- (void) setLanguage:(NSString*) language
{

    lang = language;
}

- (NSString*) getLanguage
{

    if (!lang) {
        NSArray* languages = [[NSUserDefaults standardUserDefaults] objectForKey:@"AppleLanguages"];

        NSString *preferredLang = [languages objectAtIndex:0];
        lang = preferredLang;
    }

    return lang;
}
票数 0
EN

Stack Overflow用户

发布于 2013-12-10 08:03:30

使用AMLocalizedString,您可以使用它来设置本地语言。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/20488844

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档