2 つの言語を使用できるアプリを作成しています。ユーザーはボタンをクリックして言語を変更しています。これが私のonClickメソッドです:
public void setLocaleEng(View v){
Locale localeEng = new Locale("en");
Locale.setDefault(localeEng);
Configuration configEng = new Configuration();
configEng.locale = localeEng;
getBaseContext().getResources().updateConfiguration(configEng, getBaseContext().getResources().getDisplayMetrics());
Intent intent = new Intent(NastavitveJezika.this, MainActivity.class);
finish();
startActivity(intent);
}
public void setLocaleSlo(View v){
Locale localeSlo = new Locale("sl");
Locale.setDefault(localeSlo);
Configuration configSlo = new Configuration();
configSlo.locale = localeSlo;
getBaseContext().getResources().updateConfiguration(configSlo, getBaseContext().getResources().getDisplayMetrics());
Intent intent = new Intent(NastavitveJezika.this, MainActivity.class);
finish();
startActivity(intent);
}
これは正常に機能しますが、ユーザーがアプリケーションを完全に終了して再度開くと、デフォルト (英語) に戻ります。ユーザーが選択した言語設定をアプリに記憶させるにはどうすればよいですか? 答えが共有プリファレンスである場合、その方法は? これまでのところ、文字列とブール値を保存するために共有設定のみを使用してきましたが、このようなものにどのようにアプローチするかわかりません。