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

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

这样就搞定了。

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值