Ich muss eine Animation zeigen, wenn ich zum vorherigen Fragment zurück gehe, also muss ich eine onBackPressed-Methode verwenden. Da es nur in Aktivitäten avaible ist, habe ich versucht, einen Verweis zu verwenden:OnBackPressed für Fragmente verwenden
@Override
onBackPressed(){
super.onBackPressed();
infoFragment.onBackButtonPressed();
}
Und in den InfoFragment I definiert onBackButtonPressed Methode, aber es hat nicht funktioniert. So versuchte ich, wie folgt aus:
view.setFocusableInTouchMode(true);
view.requestFocus();
view.setOnKeyListener(new View.OnKeyListener() {
@Override
public boolean onKey(View view, int i, KeyEvent keyEvent) {
if(i==KeyEvent.KEYCODE_BACK){
MainActivity mainActivity=(MainActivity)getActivity();
mainActivity.loadMainFragment();
return true;
}
return false;
}
});
Also, warum es nicht funktioniert?
Der erste Ansatz sollte gut funktionieren, aber ich denke nicht, dass ein benutzerdefinierter Rücktaste Listener benötigt. Siehe http://stackoverflow.com/questions/10886669/how-to-reverse-fragment-animations-on-backstack –
'onBackPressed()' gehört zur Aktivität, nicht zum Fragment –
Verwenden Sie einfach setCustomAnimations mit FragmentTransaction. – sswierczek