效果
动画布局
在 res下新建一个anim的文件, 里面新建新建一个进入和退出的动画
- enter.xml
<set xmlns:android=\"http://schemas.android.com/apk/res/android\"><!--透明度--><!--android:fromAlpha 动画开始的透明度,从0.0 -1.0 ,0.0表示全透明,1.0表示完全不透明android:toAlpha 动画结束时的透明度,也是从0.0 -1.0 ,0.0表示全透明,1.0表示完全不透明android:duration 所用时间 单位ms --><alphaandroid:fromAlpha=\"0.0\"android:toAlpha=\"1.0\"android:duration=\"1000\"android:fillBefore=\"true\"></alpha><!--平移--><!--android:fromXDelta 起始点X轴坐标,可以是数值、百分数、百分数p 三种样式,比如 50、50%、50%pandroid:fromYDelta 起始点Y轴从标,可以是数值、百分数、百分数p 三种样式;android:toXDelta 结束点X轴坐标android:toYDelta 结束点Y轴坐标 --><translateandroid:fromXDelta=\"0\"android:toXDelta=\"40\"android:fromYDelta=\"0\"android:toYDelta=\"0\"android:duration=\"700\"android:fillBefore=\"true\"></translate></set>
- exit.xml
<set xmlns:android=\"http://schemas.android.com/apk/res/android\"><alphaandroid:fromAlpha=\"1.0\"android:toAlpha=\"0.0\"android:duration=\"1000\"android:fillBefore=\"true\"></alpha><translateandroid:fromXDelta=\"20\"android:toXDelta=\"0\"android:fromYDelta=\"0\"android:toYDelta=\"0\"android:duration=\"700\"android:fillBefore=\"true\"></translate></set>
样式定义
- res -> values -> styles.xml
<resources><style name=\"windowAnimation\" parent=\"@android:style/Animation.Activity\"><item name=\"android:windowEnterAnimation\">@anim/enter</item><item name=\"android:windowExitAnimation\">@anim/exit</item></style></resources>
popWindow中使用动画样式
Android – popWindow简单使用
//设置动画所对应的stylemPopWindow.setAnimationStyle(R.style.windowAnimation);