android 使用kotlin 实现点击更换全局语言(中日英切换)

作者:吃饺子蘸醋吗 时间:2023-11-18 03:08:50 

> 因为我的工作要用kotlin所以今天在这里给大家总结一下关于全局语言切换的kotlin语言实现实现,很简单,希望在这里可以帮助到有需要的同学,下面简单说一下实现步骤,会把运行截图放在最后<

注:在这里我要说一下,我知道kotlin不太普及,如果有的同学需要java版的,可以在通读一遍代码,了解了之后把kotlin转化为java,因为kotlin与java是互通的,代码的一些关键点,java语言该怎么写还怎么写,如果有不明白的可以留言

第一步:简单写一下选择语言的布局就好,会用到点击事件,因为我要用到三种语言,可以Button控件,TextView控件,都可以

第二步:可以看下面截图

1.右键res


android 使用kotlin 实现点击更换全局语言(中日英切换)

2.new–>android resource file


android 使用kotlin 实现点击更换全局语言(中日英切换)

3.输入filename,在下满local选择需要的语言


android 使用kotlin 实现点击更换全局语言(中日英切换)

4.最后像这样,然后在里面输入所需要控件的语言,在xml空间中运用到,比如 android:text=“@strings/定义的名字”,注意这4个string里面所有控件的数量与名字都要相同


android 使用kotlin 实现点击更换全局语言(中日英切换)

第二步:这里要用到CommonUtil工具类,因为kotlin与java是互通的,我把代码写在下面可以直接用


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);
}
}

第四步.然后在主页面进行跳转和调用,LanguageActivity就是需要改变控件语言的界面,下面会有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>

下面可以看一下整个的目录结构


android 使用kotlin 实现点击更换全局语言(中日英切换)

运行截图:


android 使用kotlin 实现点击更换全局语言(中日英切换)android 使用kotlin 实现点击更换全局语言(中日英切换)android 使用kotlin 实现点击更换全局语言(中日英切换)
android 使用kotlin 实现点击更换全局语言(中日英切换)

#####代码地址

总结

以上所述是小编给大家介绍的android 使用kotlin 实现点击更换全局语言网站的支持!
如果你觉得本文对你有帮助,欢迎转载,烦请注明出处,谢谢!

来源:https://blog.csdn.net/weixin_42567731/article/details/103024991

标签:android,kotlin
0
投稿

猜你喜欢

  • Java中构造、生成XML简明教程

    2021-10-03 09:33:58
  • maven将项目打包上传到nexus私服的详细教程

    2023-04-18 16:20:22
  • WPF实现多运算符表达式计算器

    2023-07-17 10:31:40
  • Android 客户端RSA加密的实现方法

    2023-05-23 13:50:43
  • Android中Fragment与Activity的生命周期对比

    2021-12-12 06:28:01
  • Android 程序执行Linux命令的解决方法及注意事项

    2023-07-13 00:14:58
  • Java 爬虫工具Jsoup详解

    2022-04-11 03:46:16
  • 深入理解Android MD5数据加密

    2022-03-16 07:48:03
  • Eclipse配置maven环境的图文教程

    2021-11-15 19:06:02
  • java实现获取安卓设备里已安装的软件包

    2022-10-21 00:53:04
  • Android画板开发之橡皮擦功能

    2022-10-23 02:48:52
  • 关于Java中finalize析构方法的作用详解

    2023-12-09 23:46:27
  • 8种常见的Java不规范代码

    2023-05-24 10:59:53
  • c#实现sqlserver事务处理示例

    2022-03-28 19:39:50
  • 关于同一个service调用service本身的方法

    2023-09-06 13:57:00
  • 如何把idea中的项目导入github仓库中(图文详解)

    2023-01-20 08:42:32
  • Android编程中EditText限制文字输入的方法

    2023-07-19 07:30:48
  • 详解WPF如何使用必应地图控件

    2021-07-29 19:01:27
  • Java实现单向链表的基本功能详解

    2022-12-18 10:57:02
  • Java并发编程之ConcurrentLinkedQueue源码详解

    2023-01-22 16:19:51
  • asp之家 软件编程 m.aspxhome.com