菠萝爵士 發表於 2022-10-26 08:33:53

使用SDLocalize实现高效完成iOS多语言工作

<p>SDLocalize</p>
<p>该方案最大特点是对旧代码几乎没有较多修改就可以完成从单语言项目修改为多语言的项目。并支持XIB的控件本地化,无需创建不同语言版本的XIB文件。</p>
<p>SDLocalize的工作原理:</p>
<p>首先标记一组需要本地化的控件<br />然后在恰当时机(viewDidLoad),触发一组本地化任务(Then (viewDidLoad) fires a set of localization tasks when needed)<br />SDLocalize会使用控件的文本作为LocalizedString.key替换当前控件的文本<br />SDLocalize设计时采取处理任务的模式,对项目代码和运行时(runtime)没有污染。SDLocalize本质上是一个处理控件UI样式的任务中心,是完全独立。</p>
<div class="jb51code"><pre class="brush:csharp;">control0.text = &lt;LocalizedString.key&gt;;
control1.text = &lt;LocalizedString.key&gt;;
control2.text = &lt;LocalizedString.key&gt;;
...
;
;
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
    //;
    //;
    //;
    // ...
}</pre></div>
<p>&nbsp;并且支持动态的格式字符串</p>
<div class="jb51code"><pre class="brush:csharp;">control.sdl_dynamicFormat = @"My name is %@, %@ years old."; // XIB supported
...
];</pre></div>
<p>到此这篇关于使用SDLocalize实现高效完成iOS多语言工作的文章就介绍到这了,更多相关SDLocalize实现IOS多语言内容请搜索琼殿技术社区以前的文章或继续浏览下面的相关文章希望大家以后多多支持琼殿技术社区!</p>
                           
                            <div class="art_xg">
                              <b>您可能感兴趣的文章:</b><ul><li>iOS多语言本地化流程的优化方案</li><li>iOS文本的多语言适配以及实践指南</li><li>IOS应用程序多语言本地化的两种解决方案</li></ul>
                            </div>

                        </div>
                        <!--endmain-->
頁: [1]
查看完整版本: 使用SDLocalize实现高效完成iOS多语言工作