私はこれで初心者なので、我慢してください。
私のアプリでは、ユーザーの好みに基づいてアプリのテーマを更新したいと考えています。テーマ セクションを含む設定ページがあり、MainActivity のコードは次のとおりです。
@Override
protected void onCreate(Bundle savedInstanceState) {
SharedPreferences preferences = PreferenceManager.getDefaultSharedPreferences(this);
String userTheme = preferences.getString("theme_setting", "Blue");
if (userTheme.equals("Blue"))
setTheme(R.style.BlueTheme);
else if (userTheme.equals("Red"))
setTheme(R.style.RedTheme);
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
PreferenceManager.setDefaultValues(this, R.xml.preferences, false);
//Initiate buttons
quadButton = (Button) findViewById(R.id.quadButton);
sssButton = (Button) findViewById(R.id.sssButton);
ssaButton = (Button) findViewById(R.id.ssaButton);
areaButton = (Button) findViewById(R.id.areaButton);
volumeButton = (Button) findViewById(R.id.volumeButton);
conversionButton = (Button) findViewById(R.id.conversionButton);
buttonListeners();
}
@Override
protected void onResume() {
SharedPreferences preferences = PreferenceManager.getDefaultSharedPreferences(this);
String userTheme = preferences.getString("theme_setting", "Blue");
if (userTheme.equals("Blue"))
setTheme(R.style.BlueTheme);
else if (userTheme.equals("Red"))
setTheme(R.style.RedTheme);
super.onResume();
setContentView(R.layout.activity_main);
//Initiate buttons
quadButton = (Button) findViewById(R.id.quadButton);
sssButton = (Button) findViewById(R.id.sssButton);
ssaButton = (Button) findViewById(R.id.ssaButton);
areaButton = (Button) findViewById(R.id.areaButton);
volumeButton = (Button) findViewById(R.id.volumeButton);
conversionButton = (Button) findViewById(R.id.conversionButton);
buttonListeners();
}
これは、Up ボタンが押されて設定画面から MainActivity に戻るときに機能しますが、システムの戻るボタンが押されたときには機能しません。私は onResume() メソッドでそれを解決しようとしましたが、実際には実行時に onResume を呼び出すことはないようです。また、Android Studio では、「メソッド onResume() は使用されません」と表示されます。
ここで何がうまくいかないのですか?どんな助けでも大歓迎です、ありがとう!