Android - 在onBackPressed()点击时设置动画 - 不起作用

时间:2012-10-12 04:05:55

标签: android

在我的主要活动中,我设置了这个覆盖方法来改善我的动画活动:

overridePendingTransition(R.anim.pull_in_from_right, R.anim.pull_out_to_left);

在我的第二个活动中,我将onBackPressed()方法设置为主要活动:

public void onBackPressed()
    {
        Intent backToMain = new Intent(this, MainActivity.class);
        startActivity(backToMain);
        super.onBackPressed();
    }

动画可以很好地回归,但当我关闭第二个活动的主要活动时,第一个主要活动仍然存在。

如何解决此问题?谢谢你的善意回应。

2 个答案:

答案 0 :(得分:13)

在第二项活动中,您无需创建新的意图即可返回主要活动。

public void onBackPressed(){
   //you can do your other onBackPressed logic here..

   //Then just call finish()
   finish();
}

编辑:看到OP的评论后

@Override
protected void onPause(){
  super.onPause();
  overridePendingTransition(R.anim.your_exit_animation_one, R.anim.your_exit_animation_two);
}

public void onBackPressed(){
   //you can do your other onBackPressed logic here..

   //Then just call finish()
   finish();
}

答案 1 :(得分:0)

您可以只添加一种替代方法

@Override
public void finish() {
   super.finish();
   overridePendingTransition(android.R.anim.fade_in, android.R.anim.fade_out);
}