如果对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中的动画,看到的效果是从屏幕的最下方开始做动画的。