Es gibt 2 Fragmente als F1 und F2: Von F1 Ich überbrücke die OnResume für eine OnKeyPressed auf F2 auf Back gedrückt zu gehen. Jetzt in F2 überstehe ich die OnResume für eine OnKeyPressed, um die Anwendung auf Back gedrückt zu schließen. Aber das Problem ist, wenn ich zurück Knopf auf F1 presse, es schließt die App direkt. Durch Logs habe ich festgestellt, dass OnKeyPressed von F2 auch aktiviert wird, wenn ich auf F1 zurück drücke. Wie man das korrigiert.OnKeyPressed wird in 2 Fragmenten zusammen aktiviert
Mein Code ist wie folgt F1:
@Override
public void onResume() {
super.onResume();
getView().setFocusableInTouchMode(true);
getView().requestFocus();
getView().setOnKeyListener(new View.OnKeyListener() {
@Override
public boolean onKey(View v, int keyCode, KeyEvent event) {
System.out.println("back pressed");
switch (keyCode) {
case KeyEvent.KEYCODE_BACK:
launchFragment(new F2(), F2.class.getSimpleName());
return true;
}
return false;
}
});
}
My-Code für F2 ist wie folgt:
@Override
public void onResume() {
super.onResume();
getView().setFocusableInTouchMode(true);
getView().requestFocus();
getView().setOnKeyListener(new View.OnKeyListener() {
@Override
public boolean onKey(View v, int keyCode, KeyEvent event) {
System.out.println("Set back pressed");
switch (keyCode) {
case KeyEvent.KEYCODE_BACK:
Activity a=getActivity();
a.finish();
return true;
}
return false;
}
});
}