android 使用kotlin 實(shí)現(xiàn)點(diǎn)擊更換全局語(yǔ)言(中日英切換)
> 因?yàn)槲业墓ぷ饕胟otlin所以今天在這里給大家總結(jié)一下關(guān)于全局語(yǔ)言切換的kotlin語(yǔ)言實(shí)現(xiàn)實(shí)現(xiàn),很簡(jiǎn)單,希望在這里可以幫助到有需要的同學(xué),下面簡(jiǎn)單說(shuō)一下實(shí)現(xiàn)步驟,會(huì)把運(yùn)行截圖放在最后<
注:在這里我要說(shuō)一下,我知道kotlin不太普及,如果有的同學(xué)需要java版的,可以在通讀一遍代碼,了解了之后把kotlin轉(zhuǎn)化為java,因?yàn)閗otlin與java是互通的,代碼的一些關(guān)鍵點(diǎn),java語(yǔ)言該怎么寫(xiě)還怎么寫(xiě),如果有不明白的可以留言
第一步:簡(jiǎn)單寫(xiě)一下選擇語(yǔ)言的布局就好,會(huì)用到點(diǎn)擊事件,因?yàn)槲乙玫饺N語(yǔ)言,可以Button控件,TextView控件,都可以
第二步:可以看下面截圖
1.右鍵res

2.new–>android resource file

3.輸入filename,在下滿local選擇需要的語(yǔ)言

4.最后像這樣,然后在里面輸入所需要控件的語(yǔ)言,在xml空間中運(yùn)用到,比如 android:text=“@strings/定義的名字”,注意這4個(gè)string里面所有控件的數(shù)量與名字都要相同

第二步:這里要用到CommonUtil工具類,因?yàn)閗otlin與java是互通的,我把代碼寫(xiě)在下面可以直接用
public class CommonUtil {
public static void configLanguage(Context mContext, String language) {
Configuration config = mContext.getResources().getConfiguration();
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.HONEYCOMB) {
if (language.equals("CHINESE")) {
config.locale = Locale.SIMPLIFIED_CHINESE;
} else if (language.equals("ENGLISH")) {
config.locale = Locale.US;
} else if(language.equals("JAPANESE")){
config.locale = Locale.JAPAN;
}else {
config.locale = Locale.SIMPLIFIED_CHINESE;
}
} else {
if (language.equals("CHINESE")) {
config.locale = Locale.CHINESE;
} else if (language.equals("ENGLISH")) {
config.locale = Locale.ENGLISH;
} else if (language.equals("JAPANESE")){
config.locale = Locale.JAPAN;
}else {
config.locale = Locale.CHINESE;
}
}
mContext.getResources().updateConfiguration(config, null);
}
}
第四步.然后在主頁(yè)面進(jìn)行跳轉(zhuǎn)和調(diào)用,LanguageActivity就是需要改變控件語(yǔ)言的界面,下面會(huì)有activity_language界面代碼
override fun onClick(v: View) {
when(v.id){
R.id.tvChinese->{
CommonUtil.configLanguage(this,"CHINESE")
startActivity<LanguageActivity>()
}
R.id.tvEnglish->{
CommonUtil.configLanguage(this,"ENGLISH")
startActivity<LanguageActivity>()
}
R.id.tvJan->{
CommonUtil.configLanguage(this,"JAPANESE")
startActivity<LanguageActivity>()
}
}
}
第五步:activity_language代碼
<?xml version="1.0" encoding="utf-8"?> <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:app="http://schemas.android.com/apk/res-auto" android:orientation="vertical" android:layout_width="match_parent" android:layout_height="match_parent"> <TextView android:layout_width="match_parent" android:layout_height="wrap_content" android:text="@string/text1" android:padding="10dp" android:textSize="15sp" /> <TextView android:layout_width="match_parent" android:layout_height="wrap_content" android:text="@string/text2" android:padding="10dp" android:textSize="15sp" /> <TextView android:layout_width="match_parent" android:layout_height="wrap_content" android:text="@string/text3" android:padding="10dp" android:textSize="15sp" /> <TextView android:layout_width="match_parent" android:layout_height="wrap_content" android:text="@string/text4" android:padding="10dp" android:textSize="15sp" /> <TextView android:layout_width="match_parent" android:layout_height="wrap_content" android:text="@string/text5" android:padding="10dp" android:textSize="15sp" /> <TextView android:layout_width="match_parent" android:layout_height="wrap_content" android:text="@string/text6" android:padding="10dp" android:textSize="15sp" /> </LinearLayout>
下面可以看一下整個(gè)的目錄結(jié)構(gòu)

運(yùn)行截圖:




總結(jié)
以上所述是小編給大家介紹的android 使用kotlin 實(shí)現(xiàn)點(diǎn)擊更換全局語(yǔ)言,希望對(duì)大家有所幫助,如果大家有任何疑問(wèn)請(qǐng)給我留言,小編會(huì)及時(shí)回復(fù)大家的。在此也非常感謝大家對(duì)腳本之家網(wǎng)站的支持!
如果你覺(jué)得本文對(duì)你有幫助,歡迎轉(zhuǎn)載,煩請(qǐng)注明出處,謝謝!
- Android實(shí)現(xiàn)app應(yīng)用多語(yǔ)言切換功能
- Android app應(yīng)用多語(yǔ)言切換功能實(shí)現(xiàn)
- android動(dòng)態(tài)設(shè)置app當(dāng)前運(yùn)行語(yǔ)言的方法
- 詳解Android更改APP語(yǔ)言模式的實(shí)現(xiàn)過(guò)程
- Android 7.0以上版本實(shí)現(xiàn)應(yīng)用內(nèi)語(yǔ)言切換的方法
- Android 系統(tǒng)語(yǔ)言切換監(jiān)聽(tīng)和設(shè)置實(shí)例代碼
- Android實(shí)現(xiàn)應(yīng)用內(nèi)置語(yǔ)言切換功能
- Android實(shí)現(xiàn)系統(tǒng)語(yǔ)言切換功能
- Android App中進(jìn)行語(yǔ)言的切換
相關(guān)文章
Android中可以作為L(zhǎng)og開(kāi)關(guān)的一些操作及安全性詳解
Android的調(diào)試好伙伴L(zhǎng)og在調(diào)試時(shí)非常有用,基本可以看Log而無(wú)需單點(diǎn)調(diào)試,尤其對(duì)實(shí)時(shí)大數(shù)據(jù)量的設(shè)備調(diào)試尤其有效,下面這篇文章就來(lái)給大家詳細(xì)介紹關(guān)于Android中可以作為L(zhǎng)og開(kāi)關(guān)的一些操作及安全性的相關(guān)資料,需要的朋友可以參考下。2017-12-12
Android Studio 3.0 原生支持kotlin 例子詳解
這篇文章主要介紹了 Android Studio 3.0 原生支持kotlin 例子詳解,非常具有實(shí)用價(jià)值,需要的朋友可以參考下2017-05-05
Android開(kāi)發(fā)利器之pidcat安裝方式
pidcat 是Android屆JakeWharton大神開(kāi)發(fā)的一款命令行工具,堪稱Android開(kāi)發(fā)利器,它能方便Android程序猿捕獲日志,過(guò)濾日志,定位程序問(wèn)題,超級(jí)好用。這篇文章給大家介紹了Android開(kāi)發(fā)利器之pidcat,需要的朋友可以參考下2019-05-05
Jenkins打包android應(yīng)用時(shí)自動(dòng)簽名apk詳解
這篇文章主要介紹了Jenkins打包android應(yīng)用時(shí)自動(dòng)簽名apk詳解,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下2019-07-07
RecycleView實(shí)現(xiàn)各種尺寸圖片展示
這篇文章主要為大家詳細(xì)介紹了RecycleView實(shí)現(xiàn)各種尺寸圖片展示,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2021-05-05
Android SQLite操作之大數(shù)據(jù)處理與同時(shí)讀寫(xiě)方法
這篇文章主要介紹了Android SQLite操作之大數(shù)據(jù)處理與同時(shí)讀寫(xiě)方法,實(shí)例分析了Android操作SQLite時(shí)基于事務(wù)的數(shù)據(jù)緩存與批量插入技巧,以及同時(shí)讀寫(xiě)的相關(guān)實(shí)現(xiàn)方法與注意事項(xiàng),需要的朋友可以參考下2016-07-07
Android Studio3.6.3 當(dāng)前最新版本數(shù)據(jù)庫(kù)查找與導(dǎo)出方法(圖文詳解)
這篇文章主要介紹了Android Studio3.6.3 當(dāng)前最新版本數(shù)據(jù)庫(kù)查找與導(dǎo)出方法,本文通過(guò)圖文并茂的形式給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2020-04-04

