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; 
复制代码

有三个参数 key 、 value 、 tableName ,并且返回一个字符串。

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

查看所有标签

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

第三次工业革命

第三次工业革命

[美] 杰里米•里夫金(Jeremy Rifkin) / 张体伟 / 中信出版社 / 2012-5 / 45.00元

第一次工业革命使19世纪的世界发生了翻天覆地的变化 第二次工业革命为20世纪的人们开创了新世界 第三次工业革命同样也将在21世纪从根本上改变人们的生活和工作 在这本书中,作者为我们描绘了一个宏伟的蓝图:数亿计的人们将在自己家里、办公室里、工厂里生产出自己的绿色能源,并在“能源互联网”上与大家分享,这就好像现在我们在网上发布、分享消息一样。能源民主化将从根本上重塑人际关系,它将影响......一起来看看 《第三次工业革命》 这本书的介绍吧!

HTML 压缩/解压工具
HTML 压缩/解压工具

在线压缩/解压 HTML 代码

Base64 编码/解码
Base64 编码/解码

Base64 编码/解码

HEX HSV 转换工具
HEX HSV 转换工具

HEX HSV 互换工具