自定义View

自定义View的分类:

  • 继承View重写onDraw方法
  • 继承ViewGroup派生出特殊的layout
  • 继承特定的View(比如TextView)
  • 继承特定的ViewGroup(比如LinearLayout)

自定义View需要注意的事项

  • 让View支持Wrap_content
    如果不在onMeasure中支持wrape_content,那么在布局中使用wrape_content效果等同于match_content
  • 如果有必要让view支持padding
    直接继承 view的控件如果不再draw方法里处理padding,那么padding属性将不起作用
  • 尽量不要在view中使用handler,没有必要
    view本身提供了post系列方法,完全可以代替handler,除非很明确需要handler来发送消息
  • view中如果有线程或者动画,需要及时停止
  • view带有滑动嵌套情形时,需要处理好滑动冲突
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容