浅沫记忆 发表于 2022-10-25 11:08:47

使用SDLocalize高效完成iOS本地化国际化工作

使用SDLocalize高效完成iOS本地化国际化工作
SDLocalize
该方案最大特点是对旧代码几乎没有较多修改就可以完成从单语言项目修改为多语言的项目。并支持XIB的控件本地化,无需创建不同语言版本的XIB文件。
SDLocalize的工作原理:

[*]首先标记一组需要本地化的控件
[*]然后在恰当时机(viewDidLoad),触发一组本地化任务(Then (viewDidLoad) fires a set of localization tasks when needed)
[*]SDLocalize会使用控件的文本作为LocalizedString.key替换当前控件的文本
SDLocalize设计时采取处理任务的模式,对项目代码和运行时(runtime)没有污染。SDLocalize本质上是一个处理控件UI样式的任务中心,是完全独立。
control0.text = <LocalizedString.key>;
control1.text = <LocalizedString.key>;
control2.text = <LocalizedString.key>;
...
;
;
control2.sdl_defaultRegister = @"-";
...
// 然后在恰当时机(viewDidLoad),触发一组本地化任务
// It then triggers a set of localization tasks when needed
- (void)viewDidLoad {
    ; // Takes effect on all controls marked as default pages
    //;
    //;
    //;
    // ...
}
并且支持动态的格式字符串
control.sdl_dynamicFormat = @"My name is %@, %@ years old."; // XIB supported
...
];
https://www.cnblogs.com/xiaobajiu/p/16823227.html
页: [1]
查看完整版本: 使用SDLocalize高效完成iOS本地化国际化工作