iOS (模仿微信)應(yīng)用內(nèi)切換語(yǔ)言與字體大小

? ? ?最近公司需要切換多語(yǔ)言和字體大小功能,上網(wǎng)查看比較少的實(shí)用方案。于是我經(jīng)過(guò)幾天嘗試和思考完成了第一版的應(yīng)用內(nèi)多語(yǔ)言版本切換的功能Demo。

方案思路:

一.如何只在一個(gè)配置文件中,實(shí)現(xiàn)多語(yǔ)言的配置。

二.每個(gè)文本控件如何顯示對(duì)應(yīng)語(yǔ)言。

三.如果通過(guò)開(kāi)關(guān)來(lái)控制界面中的每個(gè)文本控件,同時(shí)切換對(duì)應(yīng)的語(yǔ)言和字體樣式。

首先:

解決第一個(gè)配置問(wèn)題:我是用plist文件(JSON文件也可以)。通過(guò)一個(gè)key 對(duì)應(yīng)一組語(yǔ)言數(shù)據(jù)就可以解決了。如下圖:我設(shè)置key為訂單詳情,對(duì)應(yīng)數(shù)組類(lèi)型和文本:中文(訂單詳情) ,英文(OrderDetail),中文繁體(訂單詳情)。


其次:

我通過(guò)category類(lèi)方式來(lái)綁定配置文件中的key值,然后通過(guò)一個(gè)枚舉類(lèi)型切換語(yǔ)言種類(lèi)和字體大小。




最后:我通過(guò)一個(gè)控制中心,要變化語(yǔ)言的文本控件加入到這個(gè)控制中心的字典中,然后通過(guò)此控制中心來(lái)統(tǒng)一管理和分發(fā)消息。此外我還做了一些富文本的語(yǔ)言切換功能。

https://github.com/PeterCore/ZCLanguageManagerDemo 這個(gè)鏈接地址。

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書(shū)系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

  • 發(fā)現(xiàn) 關(guān)注 消息 iOS 第三方庫(kù)、插件、知名博客總結(jié) 作者大灰狼的小綿羊哥哥關(guān)注 2017.06.26 09:4...
    肇東周閱讀 15,706評(píng)論 4 61
  • Android 自定義View的各種姿勢(shì)1 Activity的顯示之ViewRootImpl詳解 Activity...
    passiontim閱讀 179,355評(píng)論 25 708
  • 在德語(yǔ)中有不同的方式表達(dá)否定形態(tài)(這就像英語(yǔ)中,你有時(shí)候用“no”,有時(shí)候用“does not”)。德語(yǔ)的副詞“n...
    medisol閱讀 5,326評(píng)論 0 3
  • 短發(fā),是一種偏愛(ài) 有那么一天,剪個(gè)干凈利落的短發(fā) 收拾起隨身的行李 穿起已經(jīng)舊了的牛仔褲 背上一個(gè)大大的行李 去,...
    藝伙閱讀 380評(píng)論 0 0
  • 我向往自由。 有人說(shuō)沒(méi)有絕對(duì)的自由,這句話(huà)本身就誤解了自由,因?yàn)榭桃鈴?qiáng)調(diào)自由如同不自由。我的自由生活應(yīng)該是順其自然...
    凡卡閱讀 692評(píng)論 5 3

友情鏈接更多精彩內(nèi)容