当用户选择语言时如何更改应用程序的语言?

How to change the language of the app when THE USER selects the language?

如何在用户选择语言时更改应用程序的语言?

我几乎想这样做:http://snowpard-android.blogspot.com.br/2013/03/programmatically-change-language-in.html?google_comment_id=z13isbsazkf3hzea504celo5oy3rjzbyevo0k

但我不想更改 textView 的语言,而是想创建一个带有语言名称的按钮,当用户单击它时,它会转到已翻译的第二个页面。我已经用这些语言创建了新值,但想不出可以用这些字符串打开另一个页面的代码。有人能帮帮我吗,plssss?

我建议在第一个 activity 中将语言名称作为 intent extra 传递,并在第二个 activity 中获取它并相应地更新语言。考虑以下

public class MainActivity extends AppCompatActivity {

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);

        // findViewbyId here for button
        button.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View v) {
                Intent intent = new Intent(MainActivity.this, OtherActivity.class);
                intent.putExtra("lang", "fr");
                startActivity(intent);
            }
        });
    }
}

在另一个 activity

public class OtherActivity extends AppCompatActivity {

    @Override
    private void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);

        String lang = getIntent().getStringExtra("lang") == null ? getIntent().getStringExtra("lang") : "en";

        // assuming this is the method you have to call to change the language
        changeLang(en);
    } 
}

希望对您有所帮助。

使用本地化实现点击时的效果。

       String languageToLoad  = "hi"; // change your language her this is for hindi
  Locale locale = new Locale(languageToLoad); 
    Locale.setDefault(locale);
  Configuration config = new Configuration();
   config.locale = locale;
  getBaseContext().getResources().updateConfiguration(config, 
  getBaseContext().getResources().getDisplayMetrics());
 this.setContentView(R.layout.main);