Xcode6本地化字符串,应用名称

应用名称本地化:

添加 InfoPlist.strings 文件

InfoPlist.strings的inspector 打钩须要本地化的内容(不用添加CFBundleDisplayName也可以)

分别本地化这些不同语言的CFBundleDisplayName-键配置应用显示长的名字

CFBundleName-配置应用短名字用来防止名称太长出现截断

CFBundleName(CFBundleDisplayName) =
"name";

NSLocalizedString

第一个参数key是从Localizable.strings这个文件中读取对应的key-value值

第二个参数comment可以使nil,可以使空字符串,也可以是对key的注释

NSLocalizedString(@"key",
@"comment");

注意:使用NSLocalizedString的时候,文件名必须是Localizable.strings,如果文件名不对,就只能显示key的名称,而不是value。

如果不用Localizable.strings命名如取名为ceshi 则用localizedStringForKey方法可以从指定文件中提取本地化字符串

label.text=[[NSBundle
mainBundle]localizedStringForKey:@"Yes"
value:@""
table:@"ceshi"];

在Xcode6中存在模拟器调整语言对本地化没有作用的BUG,使用真机即正常

这时候可以在Xcode6中通过修改编译方案更改系统语言,即可在模拟器中调试本地化(我测试对应用名称无效)

1:编辑Scheme

2:只需调整Application Language即可调试本地化功能。

时间: 2024-11-05 19:02:13

Xcode6本地化字符串,应用名称的相关文章

iOS国际化和genstrings所有子文件夹本地化字符串

在最近的一个繁忙的对外工程.每天加班.没有时间更新博客.简单谈一下知识的国际化. 首先,我们使用串.必须NSLocalizedString(key,comment),所以,我们是不同的Localizable.strings对key指定不同的值,系统会依据当前系统语言.去不同的lproj找不同的字符串.用个图显示吧: 我们应用仅仅支持中文,英文,所以仅仅建了zh-Hans.lproj和en.lproj,然后在Localizable.strings指定了不同的值.举比例如以下: 这样程序就能依据系统

IOS开发之本地化--字符串表的生产

IOS开发时,本地化需要使用字符串表,mac提供了自动生成工具-genstrings.可以使用genstrings从.m文件生成字符串表. 1.在mac设备上打开终端应用程序. 2.导航到代码目录.实现这一点的最简单的方法是在终端窗口输入cd空格,然后从finder打开程序文件夹,拖拽到终端窗口,一个长路径名就会出现,回车即可.可以通过ls命令查看目录内容确认. 3.通过以下代码生产字符串表: genstrings -o Base.lproj *m -o:指明输出的文件夹 *.m:告诉genst

iOS国际化和genstrings所有子目录本地化字符串

最近在忙着一个国外项目,天天加班,没时间更新博客.就简单讲讲国际化的知识. 首先,我们使用字符串,必须用NSLocalizedString(key,comment),这样我们在不同的Localizable.strings对key指定不同的值,系统会根据当前系统语言,去不同的lproj找不同的字符串.用个图显示吧: 我们应用只支持中文,英文,所以只建了zh-Hans.lproj和en.lproj,然后在Localizable.strings指定了不同的值.举例如下: 这样程序就能根据系统语言,去选

Xcode6中修改项目名称

虽说项目名称一旦确立一般不会动, 但是难保有一天就会出现这个需求,恰好今天遇到这个问题,特整理出来. 环境 mac 10.10    Xcode6.2 beta 1.想好名称(废话,但是如果是中文的话...) 如果是新手,特别注意,中文名称会被识别成 - 比如,  运护士会被识别成  --- ,这个有什么危害呢? 就是如果两个应用是字数相同的中文时候,会发生覆盖 .个中滋味,自己体会 . 还有,如果是 --- 的形式,我觉得你申请不下来推送证书(因为 apple 的推送证书必须是对唯一的应用的,

JQuery判断数组中是否包含某个元素$.inArray("元素字符串", 数组名称);

var arry = [ "C#", "html", "css", "JavaScript" ]; var result= $.inArray("C#", arry); //如果arry数组里面存在"C#" 这个字符串则返回该字符串的数组下标,否则返回(不包含在数组中) -1

在对象上调用以字符串作为名称的方法

调用对象的方法,一般分为两步,首先查找对象的属性中是否包含该方法名称,然后是调用函数. 对于简单的情形,可以使用getattr(),如下: import math class Point: def __init__(self, x, y): self.x = x self.y = y def __repr__(self): return 'Point({!r:},{!r:})'.format(self.x, self.y) def distance(self, x, y): return mat

iOS开发-Xcode6应用程序国际化本地化

[置顶] iOS开发-Xcode6应用程序国际化本地化 分类: iOS开发2014-10-11 19:44 3116人阅读 评论(0) 收藏 举报 ios应用国际化本地化xcodeiOS国际化终极教程 应用程序国际化和本地化 本文来自:http://blog.csdn.net/yangbingbinga/article/details/39998673转载请注明出处 1.国际化.首先创建一个工程,在  Localizations里面添加你需要支持的语言 2.然后对要国际化的东西  如,故事板 右

字符串本地化

转载自: http://objccn.io/issue-9-3/ 一个应用在进行多语言本地化的时候涉及到大量的工作.因为这一期的主题是字符串,所以本文主要探讨字符串的本地化.字符串本地化有两种方法:修改代码或修改 nib 文件和 storyboard.本文将专注于通过代码实现字符串的本地化. NSLocalizedString NSLocalizedString 这个宏是字符串本地化的核心工具.它还有三个鲜为人知的变体:NSLocalizedStringFromTable.NSLocalized

代码中字符串的本地化

所谓字符串本地化,就是指App内的字符串在不同的语言环境下显示不同的内容. 比如,"主页"这个字符串在中文语言环境下显示"主页",在英语环境下显示"home".下面就开始进行字符串本地化. 其实字符本地化和App名称本地化过程如出一辙,只是创建的文件名成不一样(连同后缀一起,文件名必须是Localizable.strings),其他步骤完全相同. 为了能够让大家彻底了解,此处还是会把步骤一一贴出来. 1.准备操作流程 1.1 创建 和应用名称本地