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+ 设备上以编程方式禁用"窗口动画缩放"?

相关推荐
快乐的木子李25 分钟前
Java核心技术面试题
java·开发语言
chaser&upper1 小时前
Spring 服务调用接口时,提示You should be redirected automatically to target URL:
java
一切皆有迹可循3 小时前
IntelliJ IDEA中Spring Boot项目整合MyBatis:从零实现高效数据持久化
java·spring boot·intellij-idea·mybatis
雾月555 小时前
LeetCode 941 有效的山脉数组
java·开发语言·数据结构·算法·leetcode·职场和发展
QING6186 小时前
【LeakCanary】的实现原理与调优技巧
android·性能优化·app
QING6186 小时前
Android LruCache 与 DiskLruCache 深度解析
android·kotlin·app
小诸葛的博客7 小时前
Apache BookKeeper Ledger 的底层存储机制解析
java
半旧5187 小时前
重构谷粒商城11:node快速入门
java·前端·重构
嘤国大力士8 小时前
C++11&QT复习 (十六)
java·开发语言·c++
菜鸟起航ing8 小时前
【Java面试系列】Spring Boot中自动配置原理与自定义Starter开发实践详解 - 3-5年Java开发必备知识
java·spring boot·面试·自动配置·自定义starter