iOS 本地化(非IB篇)

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

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

步骤如下:

  • 步骤一:创建 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篇)》,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对 码农网 的支持!

查看所有标签

猜你喜欢:

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

图解Java多线程设计模式

图解Java多线程设计模式

[日] 结城浩 / 侯振龙、杨文轩 / 人民邮电出版社 / 2017-8 / 89.00元

本书通过具体的Java 程序,以浅显易懂的语言逐一说明了多线程和并发处理中常用的12 种设计模式。内容涉及线程的基础知识、线程的启动与终止、线程间的互斥处理与协作、线程的有效应用、线程的数量管理以及性能优化的注意事项等。此外,还介绍了一些多线程编程时容易出现的失误,以及多线程程序的阅读技巧等。在讲解过程中,不仅以图配文,理论结合实例,而且提供了运用模式解决具体问题的练习题和答案,帮助读者加深对多线......一起来看看 《图解Java多线程设计模式》 这本书的介绍吧!

JSON 在线解析
JSON 在线解析

在线 JSON 格式化工具

XML、JSON 在线转换
XML、JSON 在线转换

在线XML、JSON转换工具

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

html转js在线工具