使用SDLocalize實現(xiàn)高效完成iOS多語言工作
該方案最大特點是對舊代碼幾乎沒有較多修改就可以完成從單語言項目修改為多語言的項目。并支持XIB的控件本地化,無需創(chuàng)建不同語言版本的XIB文件。
SDLocalize的工作原理:
首先標(biāo)記一組需要本地化的控件
然后在恰當(dāng)時機(jī)(viewDidLoad),觸發(fā)一組本地化任務(wù)(Then (viewDidLoad) fires a set of localization tasks when needed)
SDLocalize會使用控件的文本作為LocalizedString.key替換當(dāng)前控件的文本
SDLocalize設(shè)計時采取處理任務(wù)的模式,對項目代碼和運(yùn)行時(runtime)沒有污染。SDLocalize本質(zhì)上是一個處理控件UI樣式的任務(wù)中心,是完全獨(dú)立。
control0.text = <LocalizedString.key>;
control1.text = <LocalizedString.key>;
control2.text = <LocalizedString.key>;
...
[control0 sdl_defaultRegister];
[control1 sdl_defaultRegister];
control2.sdl_defaultRegister = @"-";
...
// 然后在恰當(dāng)時機(jī)(viewDidLoad),觸發(fā)一組本地化任務(wù)
// 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];
? ? // ...
}并且支持動態(tài)的格式字符串
control.sdl_dynamicFormat = @"My name is %@, %@ years old."; // XIB supported ... [control sdl_localizeWithFormateArgs:@[name, age]];
到此這篇關(guān)于使用SDLocalize實現(xiàn)高效完成iOS多語言工作的文章就介紹到這了,更多相關(guān)SDLocalize實現(xiàn)IOS多語言內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
iOS App開發(fā)中的UISegmentedControl分段組件用法總結(jié)
UISegmentedControl主要被用來制作分頁按鈕或添加跳轉(zhuǎn)到不同位置的標(biāo)簽,這里我們就來看一下iOS App開發(fā)中的UISegmentedControl分段組件用法總結(jié),需要的朋友可以參考下2016-06-06
實例講解iOS中的CATransition轉(zhuǎn)場動畫使用
CATransition類為應(yīng)用程序的轉(zhuǎn)場動畫提供了很多可控制參數(shù),接下來我們就以幾個實例講解iOS中的CATransition轉(zhuǎn)場動畫使用,需要的朋友可以參考下2016-06-06
iOS中UIScrollView嵌套UITableView的實踐教程
在UIScrollView嵌套UITableView的問題相信大家都遇到過,小編最近在工作中就遇到了這個問題,所以這篇文章主要介紹了iOS中UIScrollView嵌套UITableView的相關(guān)資料,文中介紹的方法是通過自己的實踐所得來的,需要的朋友可以參考借鑒,下面來一起看看吧。2017-05-05

