0
私の目的はコンテキストを作成する前にアプリケーション言語をオーバーライドしており、私は他のアクティビティを呼び出すためにそのコンテキストを使用します。 "onCreate"のメソッドを再作成()することで可能ですが、その目的を達成するためにアクティビティを再作成したくありません。たとえば、attachBaseContextの前にsharedPreferencesキー値を取得する方法は?
@Override
protected void attachBaseContext(Context newBase) {
//null exception here
SharedPreferences sharedPreferences = PreferenceManager.getDefaultSharedPreferences(this);
String langKey = getString(R.string.pref_language_key);
String langValue = sharedPreferences.getString(langKey, null);
super.attachBaseContext(ConfigurationUtil.wrapLanguage(newBase, langValue));
}
これができない場合は、ユーザーが設定から選択したアプリケーション言語を設定する方法はありますか。