Xcode 4.5平台上设置应用本地化, Ios 本地化,多语言

2024-08-26 08:08

本文主要是介绍Xcode 4.5平台上设置应用本地化, Ios 本地化,多语言,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

1. 给项目增加语言支持:

打开项目的“Info“属性编辑界面时,我们可以看到”localizations“一栏,如下图所示,这就是设置项目本地化支持语言的地方,在这里我们可以加入简体中文(Chinese(zh-Hans))、繁体中文(Chinese(zh-Hant))等语种的支持。

1_设置应用语言.jpg

 

2. 应用程序名

一个Xcode项目可以建立多个target,每个target代表一个不同的应用(产品),而且每个target都有自己的Info.plist配置文件,应用程序名(安装后在IOS设备上显示的名称)是在Info.plist配置文件里设置。

Info.plist不能设置本地化,如果需要让应用程序名以本地化形式显示,则要创建一个名为“InfoPlist.strings”的strings资源文件,在InfoPlist.strings里设置应用程序名,设置方式为 :"CFBundleDisplayName" = "要显示的名称"; App安装后,应用程序名会显示为键“CFBundleDisplayName”的值。通过对InfoPlist.strings本地化设置,就可以实现应用语言的本地化。主要操作步骤为:创建“InfoPlist.strings”文件 -> 选中“InfoPlist.strings” -> 打开右边工具栏(Utilites) -> 在“Localization”栏目加入语种,如下图所示:

2_应用名称本地化_1.jpg

加入多个语种后,InfoPlist.strings文件下会多出一个三角箭头,展开后,可以看到每个语种都会对应一个“InfoPlist.strings”文件(下图所示),选中一个文件,改变“CFBundleDisplayName”的值,这样就可以实现在不同的语言环境下显示不同名称的效果了。

2_应用名称本地化_2.jpg

 

3. 本地化字符串

cocoa框架内置了两个常用的宏来实现字符串的本地化:
  1. NSLocalizedString(key, comment)  
根据设备当前的语言环境自动加载对应的资源文件“Localizable.strings”,再返回资源文件里Key的值,如果不存在“Localizable.strings”文件,或者key不存在,会返回key本身。

 

  1. NSLocalizedStringFromTable(key, tbl, comment)  
根据设备当前的语言环境自动加载对应的资源文件tbl,再返回资源文件里Key的值,如果不存在tbl文件,或者key不存在,会返回key本身。

我们只要把字符串定义在strings资源文件里,像应用程序名的本地化操作一样,对strings资源文件进行本地化操作,再用使用上面2个宏读取,就可以实现字符串本地化显示了:

  1. //从文件“Localizable.strings”里读取Key为“Localizable Demo”的值   
  2. NSString *title = NSLocalizedString(@"Localizable Demo", nil);   
  3.   
  4. //从文件“MyStrings.string”里读取key为“test”的值   
  5. NSString *testString = NSLocalizedStringFromTable(@"test", @"MyStrings", nil);  

 

4. 图片和其他资源文件

选中需要本地化的资源文件 -> 打开右边工具栏(Utilites) -> 在“Localization”栏目加入需要支持的语言。xcode会把资源文件拷贝到新加入语言的的目录下,把准备好的本地化文件替换掉xcode自动拷贝的文件即可。

这篇关于Xcode 4.5平台上设置应用本地化, Ios 本地化,多语言的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/1108013

相关文章

Python中随机休眠技术原理与应用详解

《Python中随机休眠技术原理与应用详解》在编程中,让程序暂停执行特定时间是常见需求,当需要引入不确定性时,随机休眠就成为关键技巧,下面我们就来看看Python中随机休眠技术的具体实现与应用吧... 目录引言一、实现原理与基础方法1.1 核心函数解析1.2 基础实现模板1.3 整数版实现二、典型应用场景2

Python Dash框架在数据可视化仪表板中的应用与实践记录

《PythonDash框架在数据可视化仪表板中的应用与实践记录》Python的PlotlyDash库提供了一种简便且强大的方式来构建和展示互动式数据仪表板,本篇文章将深入探讨如何使用Dash设计一... 目录python Dash框架在数据可视化仪表板中的应用与实践1. 什么是Plotly Dash?1.1

PyCharm如何设置新建文件默认为LF换行符

《PyCharm如何设置新建文件默认为LF换行符》:本文主要介绍PyCharm如何设置新建文件默认为LF换行符问题,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录PyCharm设置新建文件默认为LF换行符设置换行符修改换行符总结PyCharm设置新建文件默认为LF

Android Kotlin 高阶函数详解及其在协程中的应用小结

《AndroidKotlin高阶函数详解及其在协程中的应用小结》高阶函数是Kotlin中的一个重要特性,它能够将函数作为一等公民(First-ClassCitizen),使得代码更加简洁、灵活和可... 目录1. 引言2. 什么是高阶函数?3. 高阶函数的基础用法3.1 传递函数作为参数3.2 Lambda

Linux上设置Ollama服务配置(常用环境变量)

《Linux上设置Ollama服务配置(常用环境变量)》本文主要介绍了Linux上设置Ollama服务配置(常用环境变量),Ollama提供了多种环境变量供配置,如调试模式、模型目录等,下面就来介绍一... 目录在 linux 上设置环境变量配置 OllamPOgxSRJfa手动安装安装特定版本查看日志在

C语言中的数据类型强制转换

《C语言中的数据类型强制转换》:本文主要介绍C语言中的数据类型强制转换方式,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录C语言数据类型强制转换自动转换强制转换类型总结C语言数据类型强制转换强制类型转换:是通过类型转换运算来实现的,主要的数据类型转换分为自动转换

利用Go语言开发文件操作工具轻松处理所有文件

《利用Go语言开发文件操作工具轻松处理所有文件》在后端开发中,文件操作是一个非常常见但又容易出错的场景,本文小编要向大家介绍一个强大的Go语言文件操作工具库,它能帮你轻松处理各种文件操作场景... 目录为什么需要这个工具?核心功能详解1. 文件/目录存javascript在性检查2. 批量创建目录3. 文件

C语言实现两个变量值交换的三种方式

《C语言实现两个变量值交换的三种方式》两个变量值的交换是编程中最常见的问题之一,以下将介绍三种变量的交换方式,其中第一种方式是最常用也是最实用的,后两种方式一般只在特殊限制下使用,需要的朋友可以参考下... 目录1.使用临时变量(推荐)2.相加和相减的方式(值较大时可能丢失数据)3.按位异或运算1.使用临时

使用C语言实现交换整数的奇数位和偶数位

《使用C语言实现交换整数的奇数位和偶数位》在C语言中,要交换一个整数的二进制位中的奇数位和偶数位,重点需要理解位操作,当我们谈论二进制位的奇数位和偶数位时,我们是指从右到左数的位置,本文给大家介绍了使... 目录一、问题描述二、解决思路三、函数实现四、宏实现五、总结一、问题描述使用C语言代码实现:将一个整

Java中&和&&以及|和||的区别、应用场景和代码示例

《Java中&和&&以及|和||的区别、应用场景和代码示例》:本文主要介绍Java中的逻辑运算符&、&&、|和||的区别,包括它们在布尔和整数类型上的应用,文中通过代码介绍的非常详细,需要的朋友可... 目录前言1. & 和 &&代码示例2. | 和 ||代码示例3. 为什么要使用 & 和 | 而不是总是使