什么事应用程序的国际化?

就是不同国家之间使用的语言不一样,中国人的应用程序显示的汉字,美国人的应用程序是英文.

接下来我们就来实现应用程序的国际化:

1.首先我们新建一个工程,命名为:Internationalization-Demo;

2.添加语言(配置语言):(英文和中文)

3.目前,应用展示的所有文本都是以硬编码字符串存在于Main.storyboard 和 ViewController里。为了本地化这些字符串,你需要把它们放在一个单独的文件中。他将会在包中简单地引用这些字符串,而不是在你的方法中进行硬编码。

Xcode使用带有 .strings 扩展名的文件来存储和检索app中使用的所有字符串,以支持每种语言。根据iOS 设备当前使用的语言,代码中一个简单的方法调用将会查找并返回要求的字符串。

3.然后我们创建一个strings文件:命名为:(InfoPlist.strings)

3、创建完成后,你可以看到工程目录结构文件如下,单击InfoPlist.strings,查看右边的属性,在Localizable栏添加语言。如图

4、添加完成后打开对应语言文件,比如

English的添加:
CFBundleDisplayName = "hello world";

Chinese的添加:
CFBundleDisplayName = "世界 你好";

5.Chinese文件中也相应的添加:

CFBundleDisplayName = "世界 你好";

6.此时运行你的程序,如果你的虚拟机在英文状态下显示如下:

7.如果虚拟机的语言为中文,那么显示的就是中文"世界 你好"

二、内容国际化

1、新建一个LzwLocalizable.strings 文件 (Localizable.strings 是系统默认名字)
2、添加语言同上

3、添加语言内容
在LzwLocalizable.strings 中,按照"key" = "value"的格式;然后使用时用NSLocalizedString(@"key", @"")读取内容; 如果不是用系统默认名字那么使用
Localization.strings English 文件添加
"English" = "hello world";

Localization.strings Chinese 文件添加
"世界你好" = "hello world";

4.接下来我们来实现以下:

PS:希望可以帮到你!

转载于:https://www.cnblogs.com/LzwBlog/p/5331013.html

iOS 应用程序的国际化相关推荐

  1. ios开发语言本地国际化_开发人员软件本地化最终语言指南

    ios开发语言本地国际化 There are lots of great guides out there for how to prep your product for international ...

  2. 25个增强iOS应用程序性能的提示和技巧 — 中级篇

    本文由破船译自:raywenderlich 转载请注明出处:BeyondVincent的博客 _____________ 在开发iOS应用程序时.让程序具有良好的性能是非常关键的.这也是用户所期望的. ...

  3. iOS 11开发教程(三)运行第一个iOS 11程序

    iOS 11开发教程(三)运行第一个iOS 11程序 运行iOS11程序 创建好项目之后,就可以运行这个项目中的程序了.单击运行按钮,如果程序没有任何问题的话,会看到如图1.6和1.7的运行效果. 图 ...

  4. Xamarin iOS开发实战第1章使用C#编写第一个iOS应用程序

    Xamarin iOS开发实战第1章使用C#编写第一个iOS应用程序 C#原本是用来编写Windows以及Windows Phone的应用程序.自从Xamarin问世后,C#的作用就发生了很大的变化. ...

  5. 马上着手开发 iOS 应用程序-1.1设置

    设置 <马上着手开发 iOS 应用程序> 给 iOS 开发带来一个完美开局.在 Mac 上,您可以创建在 iPad.iPhone 和 iPod touch 上运行的 iOS 应用程序.本指 ...

  6. Qt for ios 设置程序显示名称

    前言 Qt 开发 IOS 程序,编译出来软件的默认名称就是 Qt 的工程名,包括 Qt 开发 Android 也是一样,修改 android 的程序显示名称需要在 AndroidManifest文件中 ...

  7. [转]25个增强iOS应用程序性能的提示和技巧

    在开发iOS应用程序时,让程序具有良好的性能是非常关键的.这也是用户所期望的,如果你的程序运行迟钝或缓慢,会招致用户的差评.然而由于iOS设备的局限性,有时候要想获得良好的性能,是很困难的.在开发过程 ...

  8. 《iOS创意程序设计家》——第6.2节导航栏控制器UINavigationController

    本节书摘来自异步社区<iOS创意程序设计家>一书中的第6章,第6.2节导航栏控制器UINavigationController,作者 林柏全,更多章节内容可以访问云栖社区"异步社 ...

  9. 在2018年iOS应用程序发展趋势

    统计数据显示,到2017年,应用商店中的应用大约有220万个.该数量从2008年7月发布的月份中的800个应用增长到2017年1月的220万个.随着数量的增加,iOS应用的发展趋势也在持续每年都在变化 ...

最新文章

  1. java基础学习整理(一)
  2. seaborn.FacetGrid
  3. Lync 服务器证书 ios,iOS生成服务器所需证书pem或P12
  4. java面试题十四 基本类型的默认值
  5. 机器人学中的状态估计 中文版_机器人学中的状态估计/State Estimation for Robotics—第三章习题答案...
  6. S2SH CRUD 整合
  7. python kotlin_用Java和Python模仿Kotlin构建器
  8. redis将散裂中某个值自增_Redis总结
  9. 精彩编码 【进制转换】
  10. 如何使用谷歌云盘下载Kaggle数据集+解压
  11. vue中如何使用h5自定义标签?
  12. $java_home位置_关于java home:echo $ JAVA_HOME不返回jdk位置
  13. 计算机 中职生学情分析,信息技术学情分析
  14. strapi token expired解决方案
  15. X3D代码理解之demo(cfg)
  16. qt_cannot find -lxxx, 链接动态/静态库失败
  17. 使用树莓派搭建家用 NAS
  18. 杰理之l播放文件加密后不播放提示音或者正常歌曲问题【篇】
  19. [RK3288][Android6.0] PWM backlight 驱动流程小结
  20. ic集成电路专业通信计算机咋选,2021年美国留学研究生EE专业详解,选校选专业必备!...

热门文章

  1. 安装CoreOS到磁盘
  2. 【More Effective C++】Item 6
  3. C#获取屏幕分辨率(大小)
  4. 远程注入【注入分类】
  5. A 子类继承父类,子类的构造函数会覆盖父类的构造函数
  6. 制作一个大风车加载条
  7. mysql日志(介绍 路径修改 备份)
  8. 记录每个用户的操作记录(命令)
  9. 11月中30个精心设计的网站案例精选
  10. 爱慕内衣信息化颠覆流程重构供应链