Java 从DialogFragment返回MainActivity时发生的事件

Java 从DialogFragment返回MainActivity时发生的事件,java,android,android-fragments,android-activity,Java,Android,Android Fragments,Android Activity,我在跑步 Bundle bundle = new Bundle(); bundle.putInt("num", num); FragmentTransaction ft = getSupportFragmentManager().beginTransaction(); SomeActivity newFragment = SomeActivity.newInstance(); newFragment.setArguments(bundle); newFragment.show(ft, "slid

我在跑步

Bundle bundle = new Bundle();
bundle.putInt("num", num);
FragmentTransaction ft = getSupportFragmentManager().beginTransaction();
SomeActivity newFragment = SomeActivity.newInstance();
newFragment.setArguments(bundle);
newFragment.show(ft, "slideshow");
...
public class SomeActivity extends DialogFragment {
  ...
}
因此,在“SomeActivity”中,用户单击后退按钮。我想在MainActivity中处理此事件。 我尝试了“onResume”、“onStart”,但在这种情况下不调用它们。 如何解决这个问题?
非常感谢。

我认为这会起作用,但没有经过测试,可以覆盖活动的onBackPressed,并使用fragment标记检查DialogFragment是否显示

@Override
public void onBackPressed() {
    if (getSupportFragmentManager().findFragmentByTag("slideshow")) {
        // dialog is open, do your thing
    }
    super.onBackPressed();
}

DialogFragment
将不会有
backPressed()
。您需要在
活动的
onBackPressed()
内部处理它。