这篇文章主要介绍了使用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>;
...
[control0 sdl_defaultRegister];
[control1 sdl_defaultRegister];
control2.sdl_defaultRegister = @"-";
...
// 然后在恰当时机(viewDidLoad),触发一组本地化任务
// It then triggers a set of localization tasks when needed
- (void)viewDidLoad {
[SDLocalize defaultLocalize]; // Takes effect on all controls marked as default pages
//[control0 sdl_localizeIfNeed];
//[control1 sdl_localizeIfNeed];
//[control2 sdl_localizeIfNeed];
// ...
}并且支持动态的格式字符串
control.sdl_dynamicFormat = @"My name is %@, %@ years old."; // XIB supported
...
[control sdl_localizeWithFormateArgs:@[name, age]];到此这篇关于使用SDLocalize实现高效完成iOS多语言工作的文章就介绍到这了,更多相关SDLocalize实现IOS多语言内容请搜索编程学习网以前的文章希望大家以后多多支持编程学习网!
本文标题为:使用SDLocalize实现高效完成iOS多语言工作
基础教程推荐
- Android开发使用RecyclerView添加点击事件实例详解 2023-06-15
- IOS 播放系统提示音使用总结(AudioToolbox) 2023-03-01
- Flutter绘图组件之CustomPaint使用详解 2023-05-12
- Android多返回栈技术 2023-04-15
- IOS应用内跳转系统设置相关界面的方法 2022-11-20
- Android中的webview监听每次URL变化实例 2023-01-23
- iOS开发教程之XLForm的基本使用方法 2023-05-01
- Flutter手势密码的实现示例(附demo) 2023-04-11
- 解决Android Studio突然不显示logcat日志的问题 2023-02-04
- android studio按钮监听的5种方法实例详解 2023-01-12
