在 Android 中经常需要自定义返回键的行为,通常是为了实现某些特定功能。在 AndroidX 库中,Google 提供了 OnBackPressedCallback 类来帮助我们实现这种自定义行为。下面是实现自定义行为的示例代码:
1.在 activity 中实现 onBackPressed() 方法:
@Override public void onBackPressed() { getOnBackPressedDispatcher().onBackPressed(); }
2.在 Fragment 中实现 OnBackPressedCallback:
public class CustomFragment extends Fragment { private OnBackPressedCallback callback = new OnBackPressedCallback(true /* enabled by default */) { @Override public void handleOnBackPressed() { // Handle the back button event } };
@Override
public void onCreate(@Nullable Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
requireActivity().getOnBackPressedDispatcher().addCallback(this, callback);
}
}
通过实现 OnBackPressedCallback,可以方便地实现自定义行为。在 handleOnBackPressed() 方法中,我们可以执行我们需要的操作。
注意:如果 Fragment 是嵌套的,则需要在 getParentFragmentManager() 中添加 callback。
上一篇:Android错误:“无法确定标签“<macroname=m3_comp_bottom_app_bar_container_color“>?attr/colorSurface</macro>“的类型。
下一篇:Android打包过程中,出现了“Taguses-permissionattributenamehasinvalid”错误提示,请问该如何解决?