您的位置:首页 > 运维架构

popupwindow设置动画效果,不起作用。

2017-03-14 18:30 2411 查看

popupwindow设置动画效果,不起作用。

今天在公司开发过程中遇到一个问题:为什么我使用popupwindow并给其加上动画效果时不起作用。虽然最后意识到可能是动画效果冲突的原因所导致的,但没想到怎么兼顾两者的解决方法。

很多网友分享各式各样的错误解决方法,但可惜都没能解决我的问题。最后是我给力的同事帮我解决了这样的问题。哈哈。

针对这里,我的Activity在配置时时设置了

android:theme="@style/AppTheme.NoActionBar.SwipeBack


这里面包含一句代码:

<item name="android:windowIsTranslucent">true</item>


设置为半透明,但是为什么设置为半透明后会出现这种问题我暂时也没搞懂。希望能够找到根本原因并且记录下来分享给大家。

然后我把它删掉之后果然popupwindow之前设置的动画效果正常显示了。然后问题也来了,我两个都想兼顾到怎么办?

解决方法:

修改style文件

《修改过后的》
<style name="popwin_anim_style">
<item name="android:windowIsTranslucent">true</item>
<item name="android:windowEnterAnimation">@anim/popup_enter</item>
<item name="android:windowExitAnimation">@anim/popup_exit</item>
</style>

《原本存在冲突的》
<style name="popwin_anim_style">
<item name="android:windowEnterAnimation">@anim/popup_enter</item>
<item name="android:windowExitAnimation">@anim/popup_exit</item>
</style>


不同的地方就是又加了设置了半透明的属性。至于为什么我也懵逼。网上也有很多这个半透明属性引发的问题,不过我还没看懂,哈哈。得抽时间弄懂这个了。

困扰了一下午的原因,希望对大伙也有用。

修正药液:

大意了,最通过上面的修改popupwindow的弹出以及退出都有了动画效果,但是并不是自己设置预期的效果。所以又做如下修改:

<style name="AppTheme.NoActionBar.SwipeBack">
<item name="android:windowIsTranslucent">true</item>
</style>

<style name="AppTheme.NoActionBar.SwipeBack.popup">
<item name="android:windowEnterAnimation">@anim/popup_enter</item>
<item name="android:windowExitAnimation">@anim/popup_exit</item>
</style>


然后activity跟popupwindow都设置为AppTheme.NoActionBar.SwipeBack.popup

这样就搞定了。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息