从DialogFragment返回MainActivity时的事件

时间:2018-05-02 00:19:58

标签: 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, "slideshow");
...
public class SomeActivity extends DialogFragment {
  ...
}

因此,在“SomeActivity”中,用户单击后退按钮。我想在MainActivity中处理这个事件。 我试过“onResume”,“onStart”,但在这种情况下不会调用它们。 怎样才能解决这个问题? 非常感谢。

1 个答案:

答案 0 :(得分:0)

我认为这样可行,但未经过测试,覆盖您的活动onBackPressed,并使用片段标记检查您的DialogFragment是否正在显示。

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