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

相关推荐
Zsh-cs5 小时前
Maven
java·maven
BD_Marathon5 小时前
Spring系统架构
java·spring·系统架构
小明和大树5 小时前
JAVA 学习笔记 三
java·笔记·学习
Hello.Reader5 小时前
Flink ML Bucketizer 连续特征分桶(多列映射、splitsArray、handleInvalid)+ Java 示例解读
java·算法·flink
糕......5 小时前
Java IO流:数据传输的艺术与机制
java·开发语言·网络·学习
a程序小傲5 小时前
蚂蚁Java面试被问:分布式Session的实现方案
java·分布式·面试
a努力。5 小时前
京东Java面试:如何设计一个分布式ID生成器
java·分布式·后端·面试
Han.miracle5 小时前
基于 SpringBoot + jQuery 实现留言板功能
java·spring boot·spring·java-ee
Mcband5 小时前
Java 三方 JSON 比对
java·开发语言·json