kongzue / DialogX

💬 DialogX dialog box component library, easy to use, more customizable, more scalable, easy to achieve a variety of dialog boxes. DialogX对话框组件库,更加方便易用,可自定义程度更高,扩展性更强,轻松实现各种对话框、菜单和提示效果,更有Material You、iOS、MIUI等主题扩展可选
Apache License 2.0
2.09k stars 217 forks source link

【BUG反馈】 空指针异常,非必现, 最新版本是否针对性解决 #441

Closed manitozhang closed 5 months ago

manitozhang commented 6 months ago

⚠️ 重要阅读

问题描述

bugly报错了一些空指针的异常 image

DialogX 版本

0.0.50.beta4

设备信息

vivo 系统版本 Android 12,level 31

是否在 Demo 中能复现此问题?

问题截图/视频

截屏/视频

错误日志

`#145156 java.lang.NullPointerException
Attempt to invoke virtual method 'android.view.WindowInsetsController android.view.View.getWindowInsetsController()' on a null object reference

com.kongzue.dialogx.util.views.FitSystemBarUtils$5.void onGlobalLayout()(FitSystemBarUtils.java:544)`
kongzue commented 6 months ago

请更新至最新的测试版本,因代码更新相关代码在 FitSystemBarUtils.java:544 已经无法找到,针对旧版本存在的问题不再处理

moguqxiong commented 6 months ago

最新测试版同样会出现一样的问题,FitSystemBarUtils.java:586,这部分getDecorView().getWindowInsetsController(),这个getDecorView()确实可能出现空的情况

kongzue commented 5 months ago

getDecorView 为空可能的原因在于您在弹出对话框时并未完成初始化,请确保提前完成了初始化操作:

DialogX.init(context)

DialogX 依赖于 activity 界面呈现界面内容,如果您正尝试使用其他实验性的实现方式(DialogX.implIMPLMode不为IMPL_MODE.VIEW)也可能存在影响。