Activity跳转动画效果(精简)

通过overridePendingTransition实现

一、准备动画文件

1、layout_down_up.xml 从下向上动画
2、layout_up_down.xml 从上向下动画
3、layout_center.xml 初始位置

layout_down_up.xml 从下向上打开activity的动画



    //位置从 Y=100% 用250毫秒时间 移动到 Y=0(从下往上移动250毫秒动画)
    

layout_up_down.xml 从上向下关闭activity的动画



    //(从上往下移动250毫秒动画)
    

layout_center.xml 在0坐标不移动



    

ps:可以实现缩放移动透明等等多种联合特效,这里只用从下往上来举例

二、开始使用

1、在Activity中的onCreate方法设置打开动画
@Override
protected void onCreate(Bundle savedInstanceState) {
    //activity打开时动画写在 super.onCreate(savedInstanceState); 前面,因为overridePendingTransition需要在onCreate之前设置
    //或者也可以写在startActivity下面,这里不推荐所以略过
    overridePendingTransition(R.anim.layout_down_up,R.anim.layout_center);
    super.onCreate(savedInstanceState);
}
2、在Activity中的finish方法设置关闭动画
@Override
public void finish() {
    super.finish();
    //activity关闭的动画写在super.finish();下面
    overridePendingTransition(R.anim.layout_center,R.anim.layout_up_down);
}

ps:
overridePendingTransition有两个参数
1、要显示的activity的动画
2、要消失的activity的动画

ps:overridePendingTransition(0, 0); //可以设置无默认动画

你可能感兴趣的:(Activity跳转动画效果(精简))