WindowManager 的 updateViewLayout取消动画效果

写了一个悬浮窗,添加了移动悬浮窗的功能和一个点击后改变悬浮窗的layoutParams.width和layoutParams.height的效果,但是出现了一个bug,悬浮窗移动后再点击按钮,悬浮窗会从移动前的位置移动到移动后的位置,具体原因不清楚是为什么。在网上找到资料,把updateViewLayout的动画效果通过反射取消掉就可以了。可能还是会移动,只不过没有动画了,应该不是最终解决方案,不过至少肉眼看不出来

java 复制代码
try {
        int currentFlags = (Integer) params.getClass().getField("privateFlags").get(params);
        params.getClass().getField("privateFlags").set(params, currentFlags | PRIVATE_FLAG_NO_MOVE_ANIMATION);
    } catch (Exception e) {
        e.printStackTrace();
    }

如何在 Android 4.0+ 设备上以编程方式禁用"窗口动画缩放"?

相关推荐
就像风一样抓不住10 小时前
SpringBoot静态资源映射:如何让/files/路径访问服务器本地文件
java·spring boot·后端
_大学牲10 小时前
全网爆火的豆包手机,到底是如何实现自动化的?一篇文章带你了解
android·人工智能·agent
缪懿11 小时前
javaEE:多线程,单列模式和生产者消费者模型
java·单例模式·java-ee
lin625342211 小时前
Android仿小米视频播放器的缩放滚轮
android·git·github
lin625342211 小时前
Android九宫格,1张图到9张图适配;图片自定义UI
android·ui·kotlin
启山智软11 小时前
【单体系统与分布式系统是两种根本不同的软件架构模式】
java·vue.js·spring boot·后端·spring
奈何不吃鱼11 小时前
【安装配置教程】在linux部署java项目
java·linux·intellij-idea·jar
_李小白11 小时前
【Android FrameWork】延伸阅读:Jetpack Compose
android