――Wenn ich eine bestimmte App erstellt habe, wollte ich einen Prozess zum Deaktivieren der Zurück-Schaltfläche einleiten, also ein Memorandum
MyActivity.java
@Override
public void onBackPressed() {
//Fügen Sie die Verarbeitung ein, wenn die Zurück-Taste gedrückt wird
}
MyFragment.java
public class MyFragment extends Fragment {
private OnBackPressedCallback mBackButtonCallback;
@Override
public void onSaveInstanceState(Bundle outState) {
super.onSaveInstanceState(outState);
}
@Override
public void onCreate(Bundle savedInstanceState) {
mBackButtonCallback = new OnBackPressedCallback(true) {
@Override
public void handleOnBackPressed() {
//Fügen Sie die Verarbeitung ein, wenn die Zurück-Taste gedrückt wird
}
};
requireActivity().getOnBackPressedDispatcher().addCallback(this, mBackButtonCallback);
}
@Override
public void onDestroy(){
mBackButtonCallback.remove();
super.onDestroy();
}
}
――Es ist sehr einfach, aber wenn Sie bei der Implementierung den Rückruf nicht explizit durch remove () mit onDestroy usw. freigeben, wird der Prozess in anderen Fragmenten usw. ausgeführt. ――Das bedeutet nicht, dass Sie es ohne Erlaubnis veröffentlichen werden, daher denke ich, dass Sie in diesem Punkt vorsichtig sein müssen.