自定义view

来源:互联网 发布:张国荣同性恋 知乎 编辑:程序博客网 时间:2024/06/18 01:10

打开掘金,看到了自定义教你步步为营掌握自定义View。真的很详细,感谢作者。摘要一下主要的内容。

收获

1.Android显示界面有一个超级复合的DecorView。
2.步骤一,确定view的位置,根据不同的layout设置不同的gravity属性。
3.确定view的大小,主要match,wrap,固定大小。测量高度的类 onMeasure。可以获取高度值和mode。mode有EXACTLY指代精确的指定大小;AT_MOST最多占用;UNSPECIFIED加载完之后,viewGroup在决定怎样显示。
4.通知viewgroup自己确定的大小。
5.view的生命周期
在create的时候onFinishInflate;
在layout的时候有onMeasure,onLayout,onSizeChanged;
在draw的时候有onDraw;
在foucs的时候有onFoucsChanged,onWindowFocusChanged;
在Attaaching的时候有onAttchedToWindow,

在实际操作中

主要有的成员变量view的
  宽度mWidth,
  高度mHeight,
  boolean mAttached是否加入到Window中,
  Boolean mChanged,是否发生改变(应该是包括布局和数据变化)。
在onMeasure中最后要调用setMeasuredDimension方法通知ViewGroup大小。
在自定义view中可以自定义广播用于处理事件。

大概就这么多,相当于是一个自定义view的梗概吧。

最后

感谢文章作者,更详细的自定义view的步骤原理请点击这里。

0 0
原创粉丝点击