1.首先需要在工程的res文件夹下面创建一个anim文件夹,在这个文件夹下面 创建 2个 xml文件,
我的的名字分别是 popshow_anim.xml和pophidden_anim.xml 后面来引用。
popshow_anim.xml里面:
1 <?xml version="1.0" encoding="utf-8"?> 2 3 <set xmlns:android="http://schemas.android.com/apk/res/android"> 4 5 <scale android:interpolator="@android:anim/accelerate_decelerate_interpolator" 6 7 android:fromXScale="0.0" 8 9 android:toXScale="1.0" 10 11 android:fromYScale="0.0" 12 13 android:toYScale="1.0" 14 15 android:pivotX="50%" 16 17 android:pivotY="50%" 18 19 android:fillAfter="false" 20 21 android:duration="200" > 22 23 24 </scale> 25 26 </set>
pophidden_anim.xml里面:
1 <!-- 消失动画--> 2 3 <?xml version="1.0" encoding="utf-8"?> 4 5 <set xmlns:android="http://schemas.android.com/apk/res/android"> 6 7 <!-- 透明度渐变--> 8 9 <alpha android:fromAlpha="1.0" android:toAlpha="0.0" android:duration="200" /> 10 11 </set>
在xml中的这些配置可以用代码来实现。
2.values文件夹的styles.xml中添加PP的样式:
1 <!-- popwidnow 显示消失动画--> 2 3 <style name="mypopwindow_anim_style"> 4 5 <item name="android:windowEnterAnimation">@anim/popshow_anim</item> <!-- 指定显示的动画xml --> 6 7 <item name="android:windowExitAnimation">@anim/pophidden_anim</item> <!-- 指定消失的动画xml --> 8 9 </style>
3.在代码中,添加popupwindow 动画;
1 myimgpopupwindow.setAnimationStyle(R.style.mypopwindow_anim_style); //设置动画 2 3 myimgpopupwindow.showAtLocation( View( 参照的view对象), Gravity.CENTER, 0, 0); //居中来显示