应用程序语言根据单击的按钮进行更改

时间:2017-03-10 15:45:50

标签: android android-studio android-activity android-animation

我想根据2个按钮更改我的应用语言。问题是,当我选择按钮语言时,我想重新启动活动动画并更改应用程序语言。语言更改但动画不起作用,并且未显示某些文本。

 al = (Button)findViewById(R.id.al);
al.setOnClickListener(new View.OnClickListener() {
        @Override
        public void onClick(View v) {

            locale = new Locale("al");
            Locale.setDefault(locale);
            Configuration config = new Configuration();
            config.locale = locale;
            getBaseContext().getResources().updateConfiguration(config,
                    getBaseContext().getResources().getDisplayMetrics());
            LanguageActivity.this.setContentView(R.layout.activity_language);
        }
    });

1 个答案:

答案 0 :(得分:0)

尝试重新创建活动,而不是重置内容视图:

LanguageActivity.this.recreate();

修改

  

按下按钮语言时,我想重新创建相同的活动,并在几秒钟后打开新活动

要在几秒钟后开始另一项活动,请使用:

final Handler handler = new Handler();
handler.postDelayed(new Runnable() {
    @Override
    public void run() {
        // 3 seconds before starting a new activity
        final int millisBeforeStart = 3000;

        final Intent intent = new Intent(LanguageActivity.this, SecondActivity.class);
        startActivity(intent);
     }
}, millisBeforeStart);