setWillNotDraw()方法使用

Posted 土金

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了setWillNotDraw()方法使用相关的知识,希望对你有一定的参考价值。

ViewGroup默认情况下,出于性能考虑,会被设置成WILL_NOT_DROW,这样ondraw就不会被执行了,

如果我们想重写一个ViewGroup的onDraw()方法,有两种方法:

1、构造函数中,给ViewGroup设置一个颜色;

2、构造函数中,调用setVillNOtDraw(false),去掉期WILL_NOT_DRAW flag,在ViewGroup初始化的时候,它调用了一个私有方法:initViewGroup,它里面会有一句setFlags(WILL_NOT_DRAW,DRAW_MASK);相当于调用 了setWillNOtDraw(true),所以说对于ViewGroup它就认为是透明的了,如果我们想要重写onDraw(),就要调用setWillNOtDraw(false)。

 

以上是关于setWillNotDraw()方法使用的主要内容,如果未能解决你的问题,请参考以下文章

自定义View的onDraw 函数不执行

自定义视图 Canvas onDraw() 不绘制任何东西

秒表的使用方法和技巧(秒表的使用方法)

Docker的基本使用方法

Java集合使用之next方法与remove方法 | Java集合使用之remove方法使用易错

安装使用方法的索引