基于Xcode5的本地化

简介:
一、程序名国际化
 
1、首先添加应用对多语言支持的国际化文件
 
点击工程根目录,然后选择PROJECT下的项目,然后选择Info选项卡,在底部可以看到Localizations,点击“+”号,可以添加国际化文件,例如添加一个简体中文Chinese(Simplified),弹出对话框后点击确定,此时在Supporting Files文件组下的InfoPlist.strings下会有两个文件,InfoPlist.strings(English)和InfoPlist.strings(Chinese(Simplified))。
 
2、在相应语言的国际化文件中添加相应的语言内容:
 
例如在英文国际化文件InfoPlist.strings(English)中添加:
CFBundleDisplayName="app name";
在中文国际化文件InfoPlist.strings(Chinese(Simplified))中添加:
CFBundleDisplayName="应用名称";
 
则应用的名称会根据系统当前的语言环境,按照相应的国际化文件中指定的CFBundleDisplayName来显示指定的名称
 

二、内容国际化

 
1、首先添加应用对多语言支持的国际化文件
如果在程序名国际化中已经添加好,则此步骤可以省略
点击工程根目录,然后选择PROJECT下的项目,然后选择Info选项卡,在底部可以看到Localizations,点击“+”号,可以添加国际化文件,例如添加一个简体中文Chinese(Simplified),弹出对话框后点击确定,此时在Supporting Files文件组下的InfoPlist.String下会有两个文件,English和Simplified。
 
2、添加多个语言的国际化文件
New File… -->iOS-->Resource-->Strings File,例如添加文件:Localizable.strings(文件名必须是该名字,否则无法识别)
然后点击文件,在右侧的文件属性列表栏中的,点击Localization按钮,在弹出的对话框中,选择对需要的对应的语言,多个语言的国际化文件与各自的语言关联了。
 
 
3、添加国际化内容
例如在Localizable.strings (English)中添加:
"loading" = "Loading…";
 
在Localizable.strings (Chinese(Simplified))中添加:
"loading" = "加载中…";
 
注意不要漏掉;(分号)
 
3、使用国际化
 
//系统会根据当前设备的语言环境来判断使用英文还是中文
NSString *loading = NSLocalizedString(@"loading",@"");
 
获取系统支持的所有语言
NSUserDefaults *defaults = [ NSUserDefaults standardUserDefaults ];  
//取得iPhone支持的所有语言设置  
NSArray *languages = [defaults objectForKey : @"AppleLanguages" ];  
NSLog ( @"%@" , languages); 
 
获取当前使用语言
NSArray *languages = [NSLocale preferredLanguages];  
NSString *currentLanguage = [languages objectAtIndex:0];  
NSLog ( @"%@" , currentLanguage); 
 
用获取到的当前语言,和支持的语言做字符串对比,就可以知道是那种语言了。
if([currentLanguage isEqualToString:@"en"])  
{  
    NSLog(@"current Language:en");  
}  
 
referened from: http://blog.csdn.net/yuyunliu/article/details/13997589
欢迎加群互相学习,共同进步。QQ群:iOS: 58099570 | Android: 572064792 | Nodejs:329118122 做人要厚道,转载请注明出处!








本文转自张昺华-sky博客园博客,原文链接:http://www.cnblogs.com/sunshine-anycall/p/3927623.html ,如需转载请自行联系原作者


相关文章
|
2月前
|
jenkins Unix 持续交付
个人记录jenkins编译ios过程 xcode是9.4.1
个人记录jenkins编译ios过程 xcode是9.4.1
41 2
|
2月前
|
Linux 数据安全/隐私保护 iOS开发
如何使用 Xcode 打包导出 IPA 文件并进行 iOS 应用内测,无需支付苹果开发者账号费用?
如何使用 Xcode 打包导出 IPA 文件并进行 iOS 应用内测,无需支付苹果开发者账号费用?
|
19天前
|
iOS开发
技术好文:xcode动态图,ios实现动态图,iosgif,暂停和继续播放
技术好文:xcode动态图,ios实现动态图,iosgif,暂停和继续播放
13 1
|
2月前
|
存储 定位技术 iOS开发
XCode8升级到Xcode9(操作系统为iOS11)后原来的工程中遇到的问题
XCode8升级到Xcode9(操作系统为iOS11)后原来的工程中遇到的问题
23 0
|
2月前
|
Linux 数据安全/隐私保护 iOS开发
Xcode8.1如何支持iOS8.0以下版本
Xcode8.1如何支持iOS8.0以下版本
24 0
|
11月前
|
iOS开发
iOS Xcode 意外退出 打不开工程
iOS Xcode 意外退出 打不开工程
133 0
|
9月前
|
iOS开发 芯片 MacOS
[Xcode 12, building for iOS Simulator, but linking in object file built for iOS, for architecture...
[Xcode 12, building for iOS Simulator, but linking in object file built for iOS, for architecture...
229 0
|
9月前
|
iOS开发 开发者
Xcode7.2真机调试iOS 9.3的设备
Xcode7.2真机调试iOS 9.3的设备
124 0
|
iOS开发
Xcode 12.3 编译提示Building for iOS Simulator, but the linked and embedded framework
Xcode 12.3 编译提示Building for iOS Simulator, but the linked and embedded framework
|
Linux 数据安全/隐私保护 iOS开发
如何使用 Xcode 打包导出 IPA 文件并进行 iOS 应用内测,无需支付苹果开发者账号费用?
苹果开发者账号认证需要支付 688 元,对于初学 iOS 开发的同学来说,仅仅是为了进行内测而不需要上架 App Store,这样的费用是不必要的。