免费观看又色又爽又黄的小说免费_美女福利视频国产片_亚洲欧美精品_美国一级大黄大色毛片

android多語言,android多語言占網(wǎng)絡(luò)圖片

android 多語言--后臺返回數(shù)據(jù)處理

這篇文章只針對后臺返回的數(shù)據(jù), 本地數(shù)據(jù)除外

創(chuàng)新互聯(lián):于2013年開始為各行業(yè)開拓出企業(yè)自己的“網(wǎng)站建設(shè)”服務(wù),為1000多家公司企業(yè)提供了專業(yè)的成都網(wǎng)站建設(shè)、網(wǎng)站設(shè)計、網(wǎng)頁設(shè)計和網(wǎng)站推廣服務(wù), 按需定制制作由設(shè)計師親自精心設(shè)計,設(shè)計的效果完全按照客戶的要求,并適當(dāng)?shù)奶岢龊侠淼慕ㄗh,擁有的視覺效果,策劃師分析客戶的同行競爭對手,根據(jù)客戶的實際情況給出合理的網(wǎng)站構(gòu)架,制作客戶同行業(yè)具有領(lǐng)先地位的。

我們發(fā)送網(wǎng)絡(luò)請求的時候, 帶一個語言類型參數(shù), 例如 map.put("language", "ZH"), 我們需要什么語言就傳什么語言類型, 正常接收返回值就可以了.

這樣做的好處:

①. 對于android端, 新增、修改、刪除語言 時也只需改變一個字段的值即可, 這個字段可以使用接口來控制值, App完全可以不用任何修改, 靈活性較高.

②. 對于整個項目而言: 前端("android", "IOS", "小程序", "公眾號") 等多個端, 完全無需做任何判斷, 只需后臺處理好即可, 總體可以節(jié)約不少時間.

后臺把所有的語言數(shù)據(jù)一起返回 , 可能出現(xiàn)如下格式:

同行的人看到了肯定會說: 叫后臺改成第一種方式啊.

如果是項目剛剛開始開發(fā), 可能比較好改.

我碰到的情況是: 一開始項目沒有做android端, 后臺和web端已經(jīng)上線了不知道多少個版本了, 反正就是后臺架構(gòu)已經(jīng)確定了, 這個時候改成本會比較大. 只能自己處理了.

這個時候處理方式:

① 如果按照原來的方式: GsonFormat.如下圖:

這樣是可以解析出來的, 看起來項目也能正常運行, 但是每個接口都這么做的話, 維護(hù)起來難度太大了, 項目越大越難維護(hù) , 例如:新增一種語言, 竟然要全局大改. 有100個接口就要改100個實體類, 等等.

②. 特殊處理

思考: 有什么辦法可以和第一種方式一樣, 修改一個參數(shù)就可以全局改變語言?

觀察: 共同點: 多語言的實體類里面都會有 變量名為"ZH" "EN" 的對象 , 對象不確定類型, 這個時候想到用泛型. 于是有下面的寫法:

我們的實體類都有這個特性, 所以直接繼承即可.

解析

解析數(shù)據(jù)類型2

特殊處理步驟:

①. 封裝好多語言基類LanguageBeanT

②. 多語言實體類繼承LanguageBeanT

③. 獲取多語言實體數(shù)據(jù)時, 要用bean.get()獲取對象.

好處

①. 增刪改語言, 只需在基類LanguageBeanT修改即可, 其它地方完全不需要修改.

②. 切換語言時: 只需賦值給languageType即可.

③.可切換回方式1 (網(wǎng)絡(luò)請求的時候, 帶一個語言類型參數(shù)) , 只需languageType = "" 即可.

封裝好以后, 即使后臺要重構(gòu), 使用方式1處理多語言, 我們也只需修改一個字段即可.

android studio的多語言設(shè)置

1.添加字符串資源:

修改strings.xml,新定義一個字符串資源(變量)show_info.

2.修改布局文件activity_main.xml和navigation.xml;

3.在res下添加一個新的目錄(dictionary),目錄名為values-zh-rCN;

將工程顯示由Android改為project,

復(fù)制values目錄到res中,復(fù)制時將名稱改為values-zh-rCN;

4.修改strings。Xml(values-zh-rCN)的內(nèi)容

Android-添加新的語言支持(比如繁體)

這幾天突然要發(fā)一個中國臺灣版本,做法比較硬:復(fù)制一個工程,改包名,改圖標(biāo),改api接口。語言全部都是繁體就行:

Android studio添加新語言資源文件(res/values/....)如下:

然后回車即可:

把對應(yīng)的字符串翻譯成繁體就行。至于翻譯,有一些工具可以借鑒。同時網(wǎng)上也有很多多語言切換的方式,就是一個工程,一個app進(jìn)行內(nèi)部切換多語言支持的方式(像微信就是。不過微信繁體有些不一定都支持了...)。具體看情況啦。。。

因為我們是整個app就是中國臺灣臺北版本,所以就都是繁體,不管系統(tǒng)是簡體還是繁體還是別的,就是繁體!!!

簡單記錄下。好多東西沒怎么關(guān)注或者使用,至于是否要深入,可能要看情況....

參考o(jì): android--實現(xiàn)多語言支持 - snow_flower - 博客園

Android國際化之多語言(配置及應(yīng)用內(nèi)設(shè)置)??

Android系統(tǒng)通過判斷當(dāng)前系統(tǒng)的Local配置,來使用對應(yīng)的strings.xml文件

values--strings.xml 默認(rèn)語言(簡體中文)

values-zh-rHK--strings.xml 繁體中文

values-en--strings.xml 英語

在Android系統(tǒng)中,系統(tǒng)的配置大都通過 Configuration 來管理,包括strings等等。

onCreate() 中注冊

onDestroy() 中取消注冊

setLanguage() 方法

通過上面的設(shè)置,可以實現(xiàn)不重啟APP修改語言的效果

以上只是對Android多語言設(shè)置的一些小小的總結(jié),可能有理解不周的情況,歡迎給我留言指出????

分享文章:android多語言,android多語言占網(wǎng)絡(luò)圖片
網(wǎng)頁網(wǎng)址:http://m.newbst.com/article16/dsseedg.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供靜態(tài)網(wǎng)站網(wǎng)站收錄面包屑導(dǎo)航App設(shè)計服務(wù)器托管

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)

商城網(wǎng)站建設(shè)