美文网首页Objective-c
iOS国际化详解

iOS国际化详解

作者: 易水寒208 | 来源:发表于2016-12-07 10:29 被阅读0次

iOS国际化详解

对于iOS国际化,一般包括:

1. 工程项目名称国际化
2. 工程内控件内容国际化
3. 工程内图片的国际化
4. 工程中其它文件的国际化

首先我们对于第一种情况 工程项目名称国际化进行说明:(我使用的是iOS 8.4系统 Xcode 版本是6.4)

1.1 首先创建一个Single View Application模板项目, 并命名为LocalizationDemo。

1.2 点击工程PROJECT 在Info列表下的Localizations下点击加号 添加国际化语言。这里为了演示方便只添加了Chinese(Simplified)


1.3 然后在Supporting Files 文件夹下 只发现了两个文件 一个Info.plist 一个main.m文件,如果要进行工程名称国际化需要有一个InfoPlist。strings文件(Xcode6之前有) 这里我们创建一个就行了, 然后选中该文件在右侧的inspector下点击Localizetion添加需要的语言即可。


然后在InfoPlist.strings(Englist)添加代码:

CFBundleDisplayName ="China";
在InforPlist.strings(Chinese Simplifified)添加代码:
CFBundleDisplayName ="中国";

然后运行项目 即可, 当改变手机中的语言环境的时候工程的名称就会出现不同的中英文。

2.1 对于工程内的控件,这里我们需要为工程添加一个UILabel 一个UIImageView 控件,并命名为nameLabel与myImageView, 然后同InfoPlist.strings类似 创建一个Localizable.strings并在Localizable.strings(English)添加代码:

image="qsmyEn.png";```
###在Localizable.strings(Chinese Simplified)中添加代码:
```name ="名字";
image="qsmyCh.png";```
##2.2 然后使用的时候 只需使用NSLocalizedString即可:
```self.nameLabel.text = NSLocalizedString(@"name", nil);
self.myImageView.image= [UIImage imageNamed:NSLocalizedString(@"image", nil)];```
####如果你的Location文件是自己自定义的,而且名称不是Localizable是其它的,那么你需要使用这样的代码:
```self.nameLabel.text = NSLocalizedStringFromTable(@"name",@"你的Localization名称", nil);
self.myImageView.image= [UIImage imageNamed:NSLocalizedStringFromTable(@"image",@"你的Localization名称", nil)];```
####然后运行即可。
##3.1 对于图片的国际化 一种是上面提到的 使用Localizable文件进行使用,通过NSLocalizedString来获取图片名称,另一种方法就比较正规化了,点中你要本地化的图片,如“icon.png”, 然后在右侧的**inspector下点击Localization选中需要国际化得语言即可。**
##**4.1 对于其他文件的国际化,同图片进行国际化的第二种方法即可。**
####**最后运行结果:**
****
![](https://img.haomeiwen.com/i3718166/c62e6774cf4e1e49.png?imageMogr2/auto-orient/strip%7CimageView2/2/w/1240)

![](https://img.haomeiwen.com/i3718166/143474e04a15f312.png?imageMogr2/auto-orient/strip%7CimageView2/2/w/1240)

相关文章

  • iOS国际化详解

    iOS国际化详解 对于iOS国际化,一般包括: 1. 工程项目名称国际化2. 工程内控件内容国际化3. 工程内图片...

  • 【技术文章收集】收集

    3分钟实现iOS语言本地化/国际化(图文详解) Apple Watch App开发基础 crash iOS Cra...

  • iOS国际化遇到的那些坑

    本文主要讲述国际化过程中所遇到的那些问题,国际化的详细步骤可以参考:3分钟实现iOS语言本地化/国际化(图文详解)...

  • iOS语言本地化/国际化(图文详解)

    3分钟实现iOS语言本地化/国际化(图文详解)前言语言本地化,又叫做语言国际化。是指根据用户操作系统的语言设置,自...

  • iOS 多语言国际化

    3分钟实现iOS语言本地化/国际化(图文详解)[https://www.jianshu.com/p/88c1b65...

  • iOS语言本地化/国际化

    3分钟实现iOS语言本地化/国际化(图文详解) https://www.jianshu.com/p/88c1b65...

  • iOS国际化详解

    iOS的国际化功能可以使APP很方便的在不同国家的不同语言之间进行切换,大大的方便了APP走向国际。国际化的时候主...

  • [iOS] 国际化详解

    PS:修改设备系统语言方法设置 -> 通用 -> 语言与地区 -> iPhone 语言Settings -> Ge...

  • iOS语言国际化

    首先建议参考VV木公子的 3分钟实现iOS语言本地化/国际化(图文详解),值得阅读。 上面的方式都是退出App,重...

  • iOS Runtime

    iOS RunLoop详解---重要而详细iOS RunLoop详解-部分

网友评论

    本文标题:iOS国际化详解

    本文链接:https://www.haomeiwen.com/subject/cnjdmttx.html