您的位置:首页 > 移动开发 > Android开发

Android -- setWillNotDraw()

2014-12-28 15:03 344 查看

干货

处理onDraw()方法不被执行的解决方法:

setWillNotDraw(false);


官方文档的解释:

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 override onDraw(Canvas) you should clear this flag.

用法

public class LayoutLayout extends LinearLayout {

public LayoutLayout (Context context, intposition) {
super(context);
setWillNotDraw(false);
}

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


总结

设置view是否更改,如果用自定义的view,重写ondraw()应该将调用此方法设置为false,这样程序会调用自定义的布局。

我是天王盖地虎的分割线

内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: