首页 > 解决方案 > 按下主页按钮会导致除以零 onDraw

问题描述

扩展视图的自定义视图托管在片段中。它被添加到 OncreateView() 中的片段中,并按预期显示。但是当用户点击家并返回该视图并触摸它时,应用程序崩溃并抛出除以零异常,因为高度为零。此时系统尝试在不测量视图的情况下绘制视图,跳过 onMeasure。基于这个 SO answer,该措施是在附加视图后完成的。我在 onAttachedToWindow 中调用了 measure 方法,但它仍然崩溃。我的问题是生命周期如何影响与片段相关的视图绘制?

标签: androidandroid-fragmentsandroid-custom-viewandroid-lifecycle

解决方案


是由其中一个文本视图中的样式引起的。改变了风格,错误就消失了。如果遇到此异常,请确保引发异常的 xml 文件中的所有视图都已正确放置。如果 android 不测量您的布局,则可能是布局包含错误的样式或视图。非常仔细地检查您的布局。


推荐阅读