Java onBackPressed()在片段中不起作用
我想在我返回时将其完全发送到手机的主页,但Java onBackPressed()在片段中不起作用,java,android,android-studio,onbackpressed,Java,Android,Android Studio,Onbackpressed,我想在我返回时将其完全发送到手机的主页,但onBackPressed()不起作用。 顺便说一句,我的页面是一个片段。使用getActivity().onBackPressed()在片段中,它将执行父活动的onBackPressed() 更准确地说 Activity activity = getActivity(); if (activity != null) { activity.onBackPressed();} onBackPressed回调由父活动处理。所以您可以
onBackPressed()
不起作用。
顺便说一句,我的页面是一个片段。使用getActivity().onBackPressed()
在片段中,它将执行父活动的onBackPressed()
更准确地说
Activity activity = getActivity();
if (activity != null) {
activity.onBackPressed();}
onBackPressed回调由父活动处理。所以您可以覆盖父活动上的回调 XyzActivity.java:
@Override
public void onBackPressed() {
handleBackPress();
}
public void handleBackPress() {
Fragment visibleFragment = getSupportFragmentManager().findFragmentById(R.id.fragmentFrameLayout);
if (visibleFragment == null) {
return;
}else if (visibleFragment instanceof PreviewFragment) {
CommonFunctions.showDialogActionable(this, "Confirm", "Are you sure you want to exit?",
"Yes", (dialogInterface, i) -> {
finish();
}, "No", null, "", null, true);
return;
}else
finish();
super.onBackPressed();
}
您好@Jam,请尝试此链接,因为
片段
backPress function()片段没有onbackpress
回调。