2017-04-22 151 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種語言),當用戶點擊它們時,它會翻到已翻譯的第二頁。 –

相關問題