由于某种原因,这看起来像是一个简单的问题,我很难与太多时间盯着计算机。我有一些代码,我可以点击文本来打开一个菜单(以Dialogue PreferenceActivity的形式),它允许我编辑是否使用定时器,如果有的话定时器持续多长时间。我遇到的问题是当我点击框时,它会继续执行主要活动线程中的代码,并在我有机会更改编辑菜单中的设置之前执行操作。在继续通过代码之前等待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关闭时返回?
这也看起来像它会工作。我将不得不看看这个。 – zgc7009
将代码移至onResume,就像魅力一样。不知道为什么我没有想到它,但感谢你的帮助。虽然我觉得OnSharedPreferenceChangeListener和startActivityForResult(),正如majormajors回答的那样,它更简洁,它仍然通过代码转换完成工作。检查你。 – zgc7009