2017-04-22 172 views
-3

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

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

但不是改变一个TextView的语言,我想创造的语言的名称的按钮,当用户点击它,它去第二页已翻译。我已经用这些语言创建了新的值,但不能考虑可以用这些字符串打开另一页的代码。任何人都可以帮我吗?

+1

http://stackoverflow.com/questions/2900023/change-language-programmatically-in-android –

+0

您可以从[Android的LocalizationActivity(https://github.com/akexorcist/Android-学习LocalizationActivity) –

回答

0

我建议将第一个活动中的语言名称作为一个意图额外语言,并在第二个活动中获得它并相应地更新语言。考虑以下

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

,并在其他活动

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

希望这有助于。

0

使用本地化实现点击上的这一点。

 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); 
+0

我不想使用位置,因为用户必须选择应用程序的语言 –

+0

正是你想要的 –

+0

我想让用户选择应用程序的语言而不需要更改语言他的手机。如果我使用位置,应用程序会自动翻译(这不是我想要的)。我的想法是创建4个按钮(对应于4种语言),当用户点击它们时,它会翻到已翻译的第二页。 –

相关问题