2017-11-23 11 views
0

に来ていないことは、私のAndroidアプリのアプリケーションコードです。Androidのロケール変更が、翻訳された文字列が続いアプリ

問題は、翻訳された文字列のいずれもがgetString()メソッドを使用してアクセスされ、翻訳されたテキストを表示していないことです。

EDIT1:あなたがいる限り、翻訳が提供されるようLocale.getDefault()に一致する言語から文字列を返しますgetString(R.string.pref_language)コールを使用しているとき、私は、Android 8.0

+0

あなたはAndroid 8を使用していますか? ロケールのためにアンドロイド8にいくつかの変更があります –

+0

はいAndroid 8.0 – Sparker0i

+0

この回答からいくつかの手がかりを得ました:https://stackoverflow.com/questions/40221711/android-context-getresources-updateconfiguration-deprecated/40704077#40704077現在は動作しています – Sparker0i

答えて

0

を使用しています。

翻訳が提供されていない場合は、デフォルトの言語、つまりvalues/strings.xmlファイルで使用している言語が返されます。

すべての翻訳された値はvalues-xxのフォルダにあります。ここで、xxは言語の2文字のISOコードです。

+0

'Log.i(" Locale "、lang);'私が設定した言語の2桁のコードを返す(hi)、 'getString()'で参照される文字列の翻訳も提供しましたが、まだ翻訳された値が得られていない – Sparker0i

+0

奇妙な...私が最初に似たような問題を抱えていたときに覚えています。私はノルウェー出身です。ここには2つの言語、nynorsk、bokmalがあります。 最初はnoの翻訳を提供しようとしましたが、nb(bokmal)とnn(nynorsk)の翻訳が必要でした。 同じようなものに直面することはできますか? –

0

ロケールの動作が変更され、すべてのアクティビティコンテキストがロケールになります。つまり、アクティビティ1のロケールを変更した場合、アクティビティ2はデフォルトロケールのままです。

解決策は、すべてのアクティビティのロケールを変更することで問題は解決されます。

関連する問題