何らかの理由で、これは私が苦労している単純な問題のように思えます。おそらく、コンピューターを見つめる時間が長すぎるのでしょう。テキストをクリックして、タイマーを使用するかどうか、使用する場合はタイマーの長さを編集できるメニュー (Dialogue PreferenceActivity の形式) を開くことができるコードがあります。私が遭遇した問題は、ボックスをクリックすると、メイン アクティビティ スレッドのコードを続行し、編集メニューで設定を変更する前にアクションを実行することです。
case R.id.main_timer:
startActivity(new Intent(this, EditSettingsView.class));
// NEED TO WAIT HERE FOR OVERLYING INTENT TO CLOSE
boolean editedSettingTimerOn = editedSetting.getBoolean("edit_timer_active", true);
if(editedSettingTimrOn == true){
startTimer(editedSetting.getLong("edit_timer_val", 180000);
}
break;
アクティビティが開いたときに設定された値ではなく、新しく選択されたブール値を取得するために、アクティビティの EditSettingView.class が終了するのを待ってからブール値を取得する必要があります。onPause() を実装してコードにブレークを作成し、その上にある EditSettingView PreferenceActivity が閉じられたときに戻る方法はありますか?