0

アンドロイドアプリ内で合計6つの言語を使用しています。ユーザーはこれを選択できます。プログラムでロケールを設定しています。言語は 英語、ヒンディー語、タミル語、テレグ、カンナダ語、マラヤーラム語、マラーティー語です。アンドロイドアプリ内で言語を変更するとアプリの状態が変化する

以下のコードを使用して、アプリの言語を変更します。

locale = new Locale(lang); 
Locale.setDefault(locale); 
Configuration conf = new Configuration(config); 
conf.locale = locale; 

getApplicationContext().getResources().updateConfiguration(conf,getBaseContext().getResources().getDisplayMetrics()); 

我々はヒンディー語と英語のアプリ間の言語を変更する共有環境設定からデータを取得することができますが、他の言語のために、それは同じクエリのためにnullを返します。アップデート1

を助けてください。次は、キーがあろうから、なぜ問題が発生しているされてsharedpreferences R.string.shared_prefs_keyからデータを取得するために、文字列値を使用しているので、共有好み

SharedPreferences sharedPrefs = context.getSharedPreferences(context.getString(R.string.shared_prefs_key), Context.MODE_PRIVATE); 
    String value = sharedPrefs.getString(key, null); 
+0

'それは同じquery.'ショーの仕事のためにnullを返します。以下のような一定の値にすることを

変更 –

答えて

0

からデータを取得するためのコードです異なる言語の文字列で変化している。また、データが異なるキーの間に格納されていたため、他の言語キーにはnullが返されます。

SharedPreferences sharedPrefs = context.getSharedPreferences("<your key>", Context.MODE_PRIVATE); 
関連する問題