像华为可左右扩展手机-HUAWEI Mate30Pro 举例
关闭左右扩展后,屏幕左右会留出24px的宽度

此时setX实际上华为会自动增加24px值,setX导致向右偏移了24px

【解决方法】
获取根ViewGroup距离屏幕左侧距离,像这样,但不能再OnCreate后立即获取,需要延迟获取

int[] location = new int[2];
roomRoot.getLocationOnScreen(location);

在setX时,最终再减去 location[0] 值即可


有些折叠手机、平板亦是如此

Logo

为开发者提供学习成长、分享交流、生态实践、资源工具等服务,帮助开发者快速成长。

更多推荐