DJLocalization 1.2.2

DJLocalization 1.2.2

测试已测试
语言语言 Obj-CObjective C
许可证 MIT
发布最后发布2016年9月

David Jennes 维护。



  • 作者
  • David Jennes

DJLocalization

Version License Platform

这是一个在运行时允许语言切换的本地化系统。支持代码字符串(NSLocalizedString)和故事板(基本国际化)。

示例

要尝试示例项目,只需运行以下命令

pod try DJLocalization

要求

需要 iOS 6 或更高版本。

安装

从 CocoaPods 安装

DJLocalization 通过 CocoaPods 提供。要安装它,只需将以下行添加到您的 Podfile 中

pod "DJLocalization"

对于 Swift,使用

pod "DJLocalization/Swift"

手动

重要注意事项:如果您项目没有使用 ARC,您必须在目标设置 > 编译设置 > 编译源中为 'DJLocalization' 中的所有文件添加 -fobjc-arc 编译器标志。

  • DJLocalization/DJlocalization 文件夹拖放到您的项目中。

用法

导入头文件

然后简单地添加以下导入到您的预处理头文件中,或者任何您使用 NSLocalizedString 宏(或变体)的文件中。

@import DJLocalization;
重要:

您必须在任何使用 NSLocalizedString 宏的地方导入此头文件,因为此头文件将替换默认的 NSLocalizedString 宏以自定义宏。如果您不这样做,则语言的运行时切换将不起作用。

本地化

使用您正常的本地化工作流程,一切都应正常工作。对于代码字符串使用 NSLocalizedString,对于故事板使用基本国际化。

如前所述,如果首先包括正确的头文件,NSLocalizedString 将只正确工作。如果您想获得更多安全性,库提供了额外的宏 DJLocalizedString,它们提供与被覆盖的 NSLocalizedString 宏相同的功能。这样,如果您忘记包括头文件,则会收到编译错误。

切换语言

在运行时,您可以通过设置语言属性在任何时候切换语言

[DJLocalizationSystem shared].language = @"en";

请小心使用语言代码(en、nl、fr 等)进行项目中的本地化。

注意事项:

视图在加载时进行翻译。这意味着如果您在某处切换语言,只有随后加载的视图将具有正确的语言字符串。理想情况下,当您切换语言时,您应该将导航控制器弹出到其根视图控制器。

鸣谢

DJLocalization 由 David Jennes 提供。代码灵感来自 Rolandas Razma 使用 RRBaseInternationalization 的工作(特别是为 storyboard/xib 视图加载字符串的方式)。

感谢 Rolandas Razma

许可协议

DJLocalization 在 MIT 许可证下可用。有关更多信息,请参阅 LICENSE 文件。