自定义后退按钮动画

时间:2010-07-20 19:46:28

标签: android

按下Back按钮时的默认动画是从左到右的幻灯片。我想用自定义动画替换它。我目前正在考虑onBackPressed()overridePendingTransition的某种组合可以解决问题,但我无法让它发挥作用。

4 个答案:

答案 0 :(得分:111)

我认为你不应该使用finish(),因为视图存储的数据将被删除

@Override
public void onBackPressed() {
    super.onBackPressed();
    overridePendingTransition(R.anim.zoom_enter, R.anim.zoom_exit);
}

答案 1 :(得分:5)

想出来。我没有完成当前的活动。以下代码可以解决问题。

@Override
public void onBackPressed() {
  [This Activity].this.finish();
  overridePendingTransition(R.anim.fade_in, R.anim.fade_out);
}

答案 2 :(得分:1)

如果你不想要动画

按照Activity

中的代码操作
@Override
public void onBackPressed() {
    super.onBackPressed();
    overridePendingTransition(0,0);
}

参考: https://developer.android.com/reference/android/app/Activity.html#overridePendingTransition(int,int)

答案 3 :(得分:0)

我不会使用onBackPressed(),因为当我们使用Fragments时它是一个hack,我们需要处理堆栈,例如。我在这里提出了一个更优雅的解决方案:

https://stackoverflow.com/a/43725255/689723