我想应用像HTC手机那样的活动转换:当你开始一个新的活动时,从右到左有一个幻灯片,但当你按下后退按钮返回上一个活动时,有幻灯片从左到右的动画。
我在我的活动的overridePendingTransition
中使用onResume
来模拟从右到左动画的幻灯片,但是当我按下后退按钮时,执行相同的动画是错误的(从结果角度)。
因此,我想问一下如何管理一个Activity的不同动画,一个用于创建它,另一个用于当用户按下键时。
非常感谢!
答案 0 :(得分:7)
要在用户按下后退按钮时定义动画,您必须覆盖onBackPressed()
中的Activity
并在其中使用overridePendingTransition()
:
public void onBackPressed() {
super.onBackPressed();
overridePendingTransition(R.anim.in_from_left, R.anim.out_to_right);
}
因此只有在按下后退按钮时才会显示此动画。
要在新活动打开时设置动画,您只需在调用startActivity()
或类似内容后定义动画:
startActivity(some_intent);
overridePendingTransition(R.anim.in_from_right, R.anim.out_to_left);
答案 1 :(得分:0)
你在android活动中使用默认动画overridePendingTransition
startActivity(new Intent(getApplicationContext(),Login.class));
overridePendingTransition(android.R.anim.fade_in,android.R.anim.fade_out);