当前位置:   article > 正文

View的onDraw函数_android 调用ondraw方法

android 调用ondraw方法

自己定义一个View,重写onDraw方法(画一个红色的圆),然后add到某一个holder中,结果显示不出来。

显然是onDraw函数没有调用。


1.  手动触发

onDraw是一个触发事件产生的调用,一般只能通过特定的方法触发调用:invalidate和postInvalidate


2. 可以在构造函数里设置该view的backgroundcolor,即setBackgroundColor(Color.rgb(0, 255, 0)); 会自动触发onDraw函数

3. 使用setWillNotDraw(false),即不拦截onDraw函数的调用

public void setWillNotDraw (boolean willNotDraw)
Since: API Level 1
If this view doesn't do any drawing on its own, set this flag to allow further optimizations. By default, this flag is not set on View, but could be set on some View subclasses such as ViewGroup. Typically, if you overrideonDraw(Canvas) you should clear this flag.
willNotDraw whether or not this View draw on its own


参考

http://blog.sina.com.cn/s/blog_4b50130d0100u0uk.html
http://blog.csdn.net/hearrt/article/details/7001358


声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/羊村懒王/article/detail/711343
推荐阅读
相关标签
  

闽ICP备14008679号