java - java android 中的 Onclick 按钮语言更改

标签 java android

我正在寻找一种方法来实现由按钮 onclick 触发的语言更改。我已经在正确的文件夹中创建了正确的 strings.xml (例如 res/values-en/),这是我的按钮代码:

Button setEN_bt = (Button) findViewById(R.id.setEN);        
setEN_bt.setOnClickListener(new View.OnClickListener() {
        public void onClick(View v) {
            Locale locale_en = new Locale("en"); 
            Locale.setDefault(locale_en);
            Configuration config_en = new Configuration();
            config_en.locale = locale_en;
            getBaseContext().getResources().updateConfiguration(config_en, getBaseContext().getResources().getDisplayMetrics());
        }
    });

所以基本上我用 onclick 更改了区域设置,但页面随后没有刷新(为什么应该......:))。有人可以告诉我如何刷新/重新加载 Activity 吗?

提前感谢您的帮助。

最佳答案

您可以尝试调用

view.invalidate();

在您想要重绘自身的 View 上。

我不确定这是否会重新加载区域设置。如果没有,您可以通过为自己创建一个新的 Intent 来重新启动 Activity:

Intent intent = new Intent(this, Activity.class);
startActivity(intent);

干杯

关于java - java android 中的 Onclick 按钮语言更改,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13140061/

相关文章:

java - 是否相应地实现了方法

java - Android如何将纬度经度转换成度数格式

javascript - 如何将java变量传递给javascript

java - ActionPerformed 和 ActionListener

java - 添加附件包装在 Java 中的方法中

java - NotificationCompat.Builder 中的 setLargeIcon() 不起作用

Android 更新 SQLite 数据库架构?

java - Android:使用单选按钮更改 TextView 的内容

java - Android 中的 Json 和 ListView 崩溃

android - KSoap HTTP 500 错误