iOS 本地化(非IB篇)

栏目: IOS · 发布时间: 6年前

内容简介:步骤如下:示意图如下:本地化(英文环境部分):

步骤如下:

  • 步骤一:创建 Localizable.strings ,用于本地化文本。

示意图如下:

iOS 本地化(非IB篇)
iOS 本地化(非IB篇)
  • 步骤二: Localizable.strings 添加中文简体支持,如下图:
iOS 本地化(非IB篇)
  • 步骤三: Localizable.strings 创建完成,如下图:
iOS 本地化(非IB篇)
  • 步骤四:添加本地化文本(默认叫 Localizable.strings ),如下图:

本地化(英文环境部分):

iOS 本地化(非IB篇)

本地化(简体中文环境部分):

iOS 本地化(非IB篇)

备注:可以使用“英文”作为key,也可以使用“中文”作为key。 (可以根据开发者的语言习惯决定)

  • 步骤五: 调用方法:就会根据设备当前的语言环境 => 不同语种的字符串。
[[NSBundle mainBundle] localizedStringForKey:@"QiPushViewController_localizationLabel.text" value:nil table:nil];
[[NSBundle mainBundle] localizedStringForKey:@"奇分享本地化文本" value:nil table:nil];

// 官方还提供了宏来做这件事,也可以使用。

NSString *str1 = NSLocalizedString(@"QiPushViewController_localizationLabel.text", @"奇分享本地化文本");
NSString *str2 = NSLocalizedString(@"QiPushViewController_localizationLabel.text", nil);
NSString *str3 = NSLocalizedString(@"奇分享本地化文本", nil);
复制代码

其中这个方法:

- (NSString *)localizedStringForKey:(NSString *)key value:(NSString *)value table:(NSString *)tableName; 
复制代码

有三个参数 keyvaluetableName ,并且返回一个字符串。

参数 含义
key 键名
value 值名
tableName 文件名(默认是Localizable)

key,value,和返回的字符串之间的关系可由如下表格表示

key value return(string)
nil nil empty string
nil non-nil value
not found nil or empty string key
not found non-nil value

注:在日常开发中:直接使用 NSLocalizedString(key, comment) 这个宏就可以啦~既方便又直观快捷。

本地化补充:创建多个本地化文件。

可以添加其他的本地化文件,例如: supplementaryLocalizable.strings ,过程与创建 Localizable.strings 的过程相同。 如下图:

iOS 本地化(非IB篇)
iOS 本地化(非IB篇)

调用方法:

[[NSBundle mainBundle] localizedStringForKey:@"奇分享本地化文本补充" value:nil table:@"supplementaryLocalizable"];

// 或者使用宏
NSLocalizedStringFromTable(@"奇分享本地化文本补充", @"supplementaryLocalizable", nil);
复制代码

工程源码: GitHub地址

关注我们的途径有:

QiShare(简书)

QiShare(掘金)

QiShare(知乎)

QiShare(GitHub)

QiShare(CocoaChina)

QiShare(StackOverflow)

QiShare(微信公众号)


以上所述就是小编给大家介绍的《iOS 本地化(非IB篇)》,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对 码农网 的支持!

查看所有标签

猜你喜欢:

本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们

现代编译原理

现代编译原理

(美)安佩尔 / 赵克佳、黄春、沈志宇 / 人民邮电出版社 / 2006-4 / 45.00元

《现代编译原理:C语言描述》全面讲述了现代编译器的结构、编译算法和实现方法,是Andrew w.Apple的“虎书”——Modern Compiler Implementation——“红、蓝、绿”三序列之一。这三本书的内容基本相同。但是使用不同的语言来实现书中给出的一个编译器。本书使用的是更适合广大读者的c语言,而另外两本书分别采用ML语言和Java语言。本书的另一个特点是增加了一些其他编译原理......一起来看看 《现代编译原理》 这本书的介绍吧!

JS 压缩/解压工具
JS 压缩/解压工具

在线压缩/解压 JS 代码

html转js在线工具
html转js在线工具

html转js在线工具

HSV CMYK 转换工具
HSV CMYK 转换工具

HSV CMYK互换工具