iOS 国际化 (国际化文字内容不改变,app名字国际化,一键切换语言)
首先我们要分三个步骤讲解怎么一步步实现app名字国际化、内容国际化、一键切换国际化的:
一、app设置内容或者可以说是app名字或者可以说Info.Plist中的东西国际化
app名字国际化
1、首先新建文件command+N 选择,然后next

记住文件名字必须为:InfoPlist,要不然系统识别会失败!

然后点击create,文件工程中会多一个不带箭头的文件

2、添加需要用到的语言

添加需要的语言(简体中文、繁体中文)英文为默认的语言不需要添加!

然后直接点击finish

3、添加语言文件到InfoPlist.Strings文件夹下边


这时候就可以写代码了
在InfoPlist.Strings(English)文件下写
"CFBundleDisplayName" = "Weibo";

同样的在另外两个文件夹写上对应的国际语言
"CFBundleDisplayName" = "微博";//InfoPlist.Strings(chinnese(simplified))
这时候系统模拟器或者真机切换语言看下,app的名字就是对应的(Weibo和微博了)
二、本地应用文字内容国际化
基本步骤和第一步资源国际化是一样的,只需要新建上边InfoPlist名字的时候换成Localizable!!!!!
1、同样的三个文件夹
内容非别是:
"key" = "home";//
"key" = "首页";
"key" = "首頁";

然后在viewcontroller中写入代码
- (void)viewDidLoad {
[super viewDidLoad];
// Do any additional setup after loading the view, typically from a nib.
UILabel *label = [[UILabel alloc]initWithFrame:CGRectMake(, , , )];
label.textColor = [UIColor blueColor];
[self.view addSubview:label];
label.text = NSLocalizedString(@"key", @"这个是前边词的注解,可以不用填写");
}
这是后本地内容国际化就完成了!切换本地模拟器环境和真机环境就能看到本地的文案的改变!

三、一键切换国际化语言,这篇博客写的比较清楚(https://www.jianshu.com/p/57f240f2a180),但是这个在你切换本地语言的时候对其改变无效 (引文本地储存了你上次记忆的appLanguage)!和二配合使用比较好!
iOS 国际化 (国际化文字内容不改变,app名字国际化,一键切换语言)的更多相关文章
- ios UITextView 计算文字内容大小
先设置好 textView的内容文字,再调用以下代码,就能够得到文字内容的size,其中参数表示最大的size的尺寸,通常,高度应该不限制,宽度是控件的宽度. let newSize = statem ...
- Android应用内部实现多语言,一键切换语言,国际化适配
1.首先提供多语言对应的string值 如en对应英语, fr对应法语 两个文件中包含同样的key, 对应不同的语言的value 2.java代码相应用户切换语言动作 private static v ...
- iOS 学习笔记六 【APP中的文字和APP名字的国际化多语言处理】
今天为新手解决下APP中的文字和APP名字的国际化多语言处理, 不多说了,直接上步骤: 1.打开你的项目,单机project名字,选中project,直接看图吧: 2.创建Localizable.st ...
- IOS APP 国际化 程序内切换语言实现 不重新启动系统(支持项目中stroyboard 、xib 混用。完美解决方案)
上篇 IOS APP 国际化(实现不跟随系统语言,不用重启应用,代码切换stroyboard ,xib ,图片,其他资源 介绍了纯代码刷新 实现程序内切换语言. 但效率底下,也存在一些问题.暂放弃. ...
- iOS Storyboard创建APP 的国际化操作
Storyboard创建APP 的国际化操作 最近在看<X-code江湖录>这本书,看到了APP 国际化这点,刚刚也简单的实践了一下.现在和大家分享分享! 写的这个简单的Demo全都是用 ...
- iOS: 设置App的国际化和本地化
原文链接:http://www.cocoachina.com/appstore/20160310/15632.html 前言 App的名字设置方式有很多种,如果在App打包上线时不做修改,最终App的 ...
- 【转】iOS 设置APP的名称(浅述APP版本国际化与本地化)
原文网址:http://www.jianshu.com/p/a3a70f0398c4 前言 App的名字设置方式有很多种,如果在App打包上线时不做修改,最终App的名字就是Xcode在建立工程时的名 ...
- Ionic App之国际化(1)单个参数的处理
最近的app开发中需要考虑多语言国际化的问题,经查资料,目前大部分使用的是angular-translate.js这个组件,网站说明是这个:https://angular-translate.gith ...
- Ionic App之国际化(3) json数组的处理
接上一篇Ionic App之国际化(2) json数组的处理 之后,如何处理json数据长度的问题,目前的一个折中方法是翻译长度字段. 多语言文件内容: "MyLa": { &qu ...
随机推荐
- Java之nio性能比较
结果:used time:53574684used time:1800077620used time:12563690可见MappedByteBuffer读写数据是最快的, 其次是FileChanne ...
- Ubuntu更改 resolv.conf 重启失效
更改Ubuntu的 resolv.conf的时候,重启的时候,经常又给重置了.google大法找到方法. sudo apt-get install resolvconf 原来Ubuntu的resol ...
- WPF 拖动多个文件到窗体 添加文件信息
将Window的AllowDrop属性设置为true window添加Drop事件 private void Window_Drop(object sender, DragEventArgs e) { ...
- Logback 专题
logback-spring.xml <?xml version="1.0" encoding="UTF-8"?> <configuratio ...
- JSTL自定义标签 实现forEach循环支持集合.数组
java代码实现 tld配置 JSP页面代码
- ASP.NET MVC 学习笔记1 Talk about controller & route
For the sake of learning programming better, I'd like to increase the frequency of using English. So ...
- WPF控件TextBlock中文字自动换行
原文:WPF控件TextBlock中文字自动换行 在很多的WPF项目中,往往为了追求界面的美观,需要控制控件中文字的换行显示,现对TextBlock控件换行的实现方式进行总结,希望大家多多拍砖!!! ...
- DLL编写与调用全解
DLL编写与调用全解 DELPHI学习 2008-12-23 22:52 阅读8 评论0 字号: 大 中 小 第一章 为什么要使用动态链接库(DLL) top 提起DLL您一定不会 ...
- svn文件合并
cd 目标目录svn merge -r 开始版本号:结束版本号 源目录或单个文件URL或svn merge 源目录或单个文件URL
- 我们错过了那么多机会,怎么办(就是预见未来的能力,并且要去做、要去投入,所以要主动学习、储备、选择,要不断的思考)good
那天在IT职业咨询QQ群里聊天,提到腾讯.阿里,我说跟着这两家公司从小到大的朋友,都获得了不菲的回报,成了富翁或者财务自由了. 有群友感叹说:“是啊,我们错过了那么多机会.” 看到这句话,我心里一动, ...