activity实现启动时从上向下出现退出时从上向下或者从下向上消失

版权声明:请尊重原创,侵权必究 如果想转载或者讨论问题,可以添加微信号 WJ1118825 进行授权获取或者共同交流学习 ,转载请注明原文链接并设置超链接跳转功能,本文链接: https://blog.csdn.net/wjj1996825/article/details/83022652

第一步:需要在anim下添加需要动画文件:

启动动画(activity_open.xml):

<?xml version="1.0" encoding="utf-8"?>  
<set xmlns:android="http://schemas.android.com/apk/res/android">  
   <translate  
    android:fromYDelta="100%p"  
    android:toYDelta="0"  
android:duration="1500"  
  />  
</set>  

结束动画1(activity_close1.xml)关闭的时候从顶部向下滑动消失:

<?xml version="1.0" encoding="utf-8"?>
<!--结束动画1,关闭的时候从顶部向下滑动消失-->
<set xmlns:android="http://schemas.android.com/apk/res/android">
    <translate
        android:fromYDelta="25"
        android:toYDelta="100%p"
        android:duration="1500"
        />
</set>

结束动画2(activity_close2.xml)关闭的时候从底部向上滑动消失:

<?xml version="1.0" encoding="utf-8"?>
<!--结束动画1,关闭的时候从底部向上滑动消失-->
<set xmlns:android="http://schemas.android.com/apk/res/android">
    <translate
        android:fromYDelta="0%p"
        android:toYDelta="-100%p"
        android:duration="700"
        />
</set>

第二步:设置启动或者消失的动画

设置启动动画:

Intent intent = new Intent();  
intent.setClassName(activity,"com.wj.MainActivity");//打开一个activity  
activity.startActivity(intent);  
                    
activity.overridePendingTransition(R.anim.activity_open,0);  

设置关闭动画:

@Override  
public void finish() {  
    super.finish();  
    //关闭窗体动画显示  

    // 结束动画1,关闭的时候从顶部向下滑动消失
    this.overridePendingTransition(0,R.anim.activity_close1); 

    // 设置结束动画1,关闭的时候从底部向上滑动消失
    //this.overridePendingTransition(0,R.anim.activity_close2);  
}  

然后就ok了

猜你喜欢

转载自blog.csdn.net/wjj1996825/article/details/83022652