2016-10-14 26 views
0

は基本的に私は何をしようとしていることは、私は私が今まで行ってきただから何(フランス語、英語、オランダ語などのように)与えられた選択肢からアプリケーションを再起動せずにロケールを変更するにはどうすればよいですか?

を私のロケールを変更SettingActivity(activity_setting) &に行くMainActivity(activity_main)で始まり、

ですそれが選択した言語に応じてstring値ですSettingActivity(activity-setting) &変更を再作成...言語名の

OnClickです。

アクティビティを再作成せずに、すべてstringの値をその選択された言語に従って適用する必要があります。

すべての提案&回答をいただきありがとうございます。 アドバンスでありがとうございます。

+1

関連を:[電話言語を変更することなく、Androidアプリの言語を変更するには?] (http://stackoverflow.com/questions/39942736/how-to-change-android-app-language-without-changing-phone-language) –

答えて

0

まず言語プロパティを変更してください。 次に、UIに表示されるすべての文字列を適切な言語に設定する新しい関数を呼び出します。

擬似コード:

TextView myTextView = (TextView) findViewbyId(R.id.tv1); 
myTextView.setText(yourCustomGetLocaleFunction("some id of the string you want to display", "some language name")); 

しかし、それは悪いアプローチです。 Androidにあなたのアプリの言語を扱わせるべきです。 strings.xmlファイルをローカライズするだけです(コードからファイルから文字列を読み込むことができます)。

編集:

一瞬にアプリの言語を変更するには、この溶液からコードを使用することができます。 How to change android app language without changing phone language?

関連する問題