解决ViewGroup不调用onDraw()的问题

Posted 妖久

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了解决ViewGroup不调用onDraw()的问题相关的知识,希望对你有一定的参考价值。

今天在做项目的时候自定义了一个View,继承了LinearLayout,结果,里面的onDraw()方法一直无法被调用。

后来发现ViewGroup是默认不调用onDraw()方法的。

原因我们暂且不去深究,有一个很简单的解决方法,那就是不要重写onDraw()方法,而是重写下面的方法:

@Override
    protected void dispatchDraw(Canvas canvas) {
        super.dispatchDraw(canvas);
      
    }

在该方法里面实现绘制。

以上是关于解决ViewGroup不调用onDraw()的问题的主要内容,如果未能解决你的问题,请参考以下文章

为什么ViewGroup的onDraw()方法不执行

setWillNotDraw()方法使用

viewGroup绘制流程

Android自定义ViewGroup,onMeasureonLayout,实现流式布局

Android自己定义组件系列——自己定义View及ViewGroup

viewgroup绘制流程