iOS国际化:如何切换语言
 
1、国际化就是将标签、提示信息等信息放到资源文件中,随着程序需要的语言提供对应的资源文件。以key/value对存储,每个资源的key值不变,value随着需求改变。
一般改变的都是写“死”的东西,网络请求的不能改变。
2、添加多语言:
新建工程(国际化)——> 国际化——>project——>info——>Localizations——> "+"Chinese(Simplified)


——> finish:


3、创建InfoPlist.strings:修改工程名语言
cmd+N(新建)——>Resource——> Strings File ——>Next

 
——>命名为InfoPlist.strings ——> creates ——>Finish
 
   添加属性:
点击InfoPlist.strings——>右侧Locatize ——> Locatize
——>取消Base,勾选English, Chinses(Simplified):
——>点击左侧InfoPlist.strings下三角添加属性:
InfoPlist.string(English)里面输入:CFBundleDisplayName = "Localizable";
InfoPlist.string(Chinese(Simplified))里面输入:CFBundleDisplayName = "国际化";
 
此时:工程的名字改为国际化(中文下),对应的英文下变为:Localizable
 
4.同理创建Localizable.strings(步骤同3):修改标签显示语言
在Localizable.strings(Simplified)下写:"labelText" = "简体中文";
在Localizable.strings(English)下写:"labelText" = "Now is English";
在VC中创建一个labelText(label的对象):

UILabel *label = [[UILabel alloc]initWithFrame:CGRectMake(100, 100, 175, 50)];

label.backgroundColor = [UIColor grayColor];

label.text = NSLocalizedString(@"labelText", nil);

[self.view addSubview:label];

结果如下:

 
获取所有语言和当前语言:

iOS - 国际化语言切换的更多相关文章

  1. DataGrid 列头实现国际化语言切换

    <DataGrid> <DataGrid.Columns> <DataGridTextColumn Binding="{x:Null}" Width= ...

  2. Java 国际化 语言切换

      Java国际化 我们使用java.lang.Locale来构造Java国际化的情境. java.lang.Locale代表特定的地理.政治和文化.需要Locale来执行其任务的操作叫语言环境敏感的 ...

  3. vue-i18n 国际化语言切换

    vue-i18n 用于前端vue项目中,需要多语言切换的场景 安装方法(npm) npm install vue-i18n 简单使用   1.在vue项目的main.ts文件中实例化 i18n imp ...

  4. vue中实现国际化--语言切换(转载)

    https://segmentfault.com/a/1190000011800593

  5. iOS开发——iOS国际化 APP内语言切换

    最近一个一直在迭代的老项目收到一份新的开发需求,项目需要做国际化适配,简体中文+英文.由于项目中采用了storyboard和纯代码两种布局方式,所以国际化也要同时实现.上网查了些资料,实现了更改系统语 ...

  6. iOS 语言切换、本地化,国际化

    什么是本地化处理? 本地化处理就是我们的应用程序有可能发布到世界的很多国家去,因为每个国家应用的语言是不一样的,所以我们要把我们的应用程序的语言要进行本地化处理一下. 本地化处理需要处理那些文件? ( ...

  7. iOS 国际化 (国际化文字内容不改变,app名字国际化,一键切换语言)

    首先我们要分三个步骤讲解怎么一步步实现app名字国际化.内容国际化.一键切换国际化的: 一.app设置内容或者可以说是app名字或者可以说Info.Plist中的东西国际化  app名字国际化  1. ...

  8. iOS APP语言国际化之应用内切换语言环境

    最近接了一个项目,需求是要做一款应用的英文版本,客户并不清楚,以为要另做一个APP.沟通后告诉他们在之前应用基础上加个国际化功能就好,把之前的语言国际化重新梳理记录一下. 一般设置更改本地语言环境后, ...

  9. iOS - 实现语言本地化/国际化

      实现iOS语言本地化/国际化(图文详解) 前言 语言本地化,又叫做语言国际化.是指根据用户操作系统的语言设置,自动将应用程序的语言设置为和用户操作系统语言一致的语言.往往一些应用程序需要提供给多个 ...

随机推荐

  1. mongo数据库命令简单学习

    db.getCollection('product').update({status:"offline"},{$set:{status:"online"}},f ...

  2. 前端如何获取http状态码400的返回值

    axios.get("/check_mobile_and_sent_code",{withCredentials:true,params:{mobile:formInline.mo ...

  3. Can't clobber writable file **************

    最近搭建了新的quick check server, workspace也是新的.但是get latest (unshelve)的时候,出现以下错误: can't clobber writable f ...

  4. Java开发者需要学习的移动开发编程语言

    编程语言(programming language),是用来定义计算机程序的形式语言.它是一种被标准化的交流技巧,用来向计算机发出指令.一种计算机语言让程序员能够准确地定义计算机所需要使用的数据,并精 ...

  5. SQL语句:一个表,通过一个字段查找另外一个字段不相同值

    select * from [dbo].[Sys_MemberKey] a where exists(select * from [Sys_MemberKey] b where a.FMachineC ...

  6. windows7 安装IIS没有default web site 解决方法

    因当时是第一次在Windows 7上使用IIS,不小心把default web site删除了,后来无论怎么重装IIS都不行,最后想到能不能直接把别人安装好后的IIS相关文件夹拷过来使用,用宿舍一哥们 ...

  7. 7 -- Spring的基本用法 -- 10... 获取其他Bean的属性值;获取Field值;获取任意方法的返回值

    7.10 高级依赖关系配置 组件与组件之间的耦合,采用依赖注入管理:但基本类型的成员变量值,应直接在代码中设置. Spring支持将任意方法的返回值.类或对象的Field值.其他Bean的getter ...

  8. ios开发之--UIViewContentMode详解

    在开发当中有时会有这样的需求,将从服务器端下载下来的图片添加到imageView 当中展示,但是下载下来的图片尺寸大小不固定,宽高也有可能不成比例 如果直接设置imageView的image属性而不设 ...

  9. LabelTTF 设置字体时的问题

    使用cc.LabelTTF:create(txt, fontname, fontsize);  字体没能显示出来, 这里使用的是系统字体,  比如我使用"微软雅黑", 作为font ...

  10. 【Cesium】模型转换和使用(转)

    http://52.4.31.236/convertmodel.html https://blog.csdn.net/UmGsoil/article/details/74572877 var view ...