如果对PopupWindow的显示隐藏过程配置动画。
有几个注意点:
1.PopupWindow的动画需要成对配置,即一个显示一个隐藏。
2.调用PopupWindow setAnimationStyle接口来设置。
定义一个Style
<style name="popup_animation"> <item name="@android:windowEnterAnimation">@anim/xiaoying_popup_show</item> <item name="@android:windowExitAnimation">@anim/xiaoying_popup_hide</item> </style>
提供两个例子动画
显示动画:
<set xmlns:android="http://schemas.android.com/apk/res/android" > <scale android:duration="500" android:fromXScale="0.0" android:fromYScale="0.0" android:interpolator="@android:anim/bounce_interpolator" android:pivotX="50%p" android:pivotY="50%p" android:toXScale="1.0" android:toYScale="1.0" /> </set>
隐藏动画:
<set xmlns:android="http://schemas.android.com/apk/res/android" > <scale android:duration="500" android:fromXScale="1.0" android:fromYScale="1.0" android:pivotX="50%p" android:pivotY="50%p" android:toXScale="0.0" android:toYScale="0.0" /> </set>
调用:
mPopupWindow.setAnimationStyle(R.style.popup_animation);
最后在动画配置过程中发现还有问题,没解决,有经验的同学请指教。
问题:
对于不占满整个window的画面的情况,动画不能从有效的View的相对0点开始做动画。比如有效的view的bottom值为400px,
demo中的动画,看到的效果是从屏幕的最下方开始做动画的。