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

处理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,这样程序会调用自定义的布局。

阅读更多
想对作者说点什么?

博主推荐

换一批

没有更多推荐了,返回首页