我为PopupWindow
设置了这样的输入/退出动画样式
mPopupWindow.setAnimationStyle(R.style.PopupAnimation);
和样式
<style name="PopupAnimation" parent="Widget.AppCompat.PopupWindow">
<item name="android:windowEnterAnimation">@anim/popup_show</item>
<item name="android:windowExitAnimation">@anim/popup_hide</item>
</style>
所以,当PopupWindow
显示/隐藏它时,它的动画可以与Lollipop
以及之前的所有Android版本一起使用。但是使用Marshmallow
弹出窗口会在动画时间间隔后显示,而且没有动画效果。
动画/弹出-show.xml
<set xmlns:android="http://schemas.android.com/apk/res/android">
<alpha android:fromAlpha="0.0"
android:toAlpha="1.0"
android:interpolator="@android:anim/accelerate_interpolator"
android:duration="1000"/>
</set>
动画/弹出-hide.xml
<set xmlns:android="http://schemas.android.com/apk/res/android">
<alpha android:fromAlpha="1.0"
android:toAlpha="0"
android:interpolator="@android:anim/accelerate_interpolator"
android:duration="1000"/>
</set>