Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

在DialogFragment上弹窗,其蒙层的位置出现异常偏移。 #512

Open
Suguiqiang opened this issue Sep 30, 2024 · 0 comments
Open

Comments

@Suguiqiang
Copy link

  • 系统版本(必须)/ System version (required):Android 9 平板设备型号是Fire HD 10(第十一代)
  • 库版本(必须)/ Library version (required):3.2.1
  • 问题代码/截图(可选)/ Problem code or screenshot (optional):
    在Demo中->API列表->构造器页面,点击DialogFragment弹窗。

出现的问题是,蒙层的位置不正确,存在偏移。

screenshot1727677324606

查看代码后,发现问题出在WindowManagerProxy类的内部类BeforeApi30Impl,里面的这一行代码
p.flags |= LayoutParams.FLAG_LAYOUT_IN_SCREEN;

如果将这行代码注释,那么显示是正常的,尺寸会被限制在父窗口的尺寸范围,如下图:
screenshot1727677366597

然后我在另一个Android 8的华为手机用这个flag,显示的蒙层却能铺满屏幕。

然后我在Api30Impl里面加上这行代码在其它平板却也能正常显示,例如,在三星的Galaxy Tab S6 Lite(Android13)上正常显示,其它平板也是正常显示,如下图:
screenshot1727678363820

想问下大大是不是亚马逊这个平板的系统问题,还是这个flag不靠谱,有没有什么比较好的方式能适配这个亚马逊平板?

  • 报错信息(可选)/ Error reporting information (optional):
    蒙层的位置不正确,存在偏移。

问题描述/重现步骤请写在这里
在Demo中->API列表->构造器页面,点击DialogFragment弹窗,出现的蒙层未能铺满屏幕。只是特定机型存在问题。

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

1 participant