美文网首页
自定义view以及View的工作流程

自定义view以及View的工作流程

作者: 小红豆610 | 来源:发表于2017-04-13 15:01 被阅读0次

    View的工作流程主要指的是measure、Layout、draw三个流程,即测量、布局、绘制。measure测量view的宽高,Layout确定view的宽高和四个顶点,draw绘制到屏幕上。

    自定义View答题分为四类:

    1、继承View重写onDraw方法

    这种方法主要自定义一些不规则的效果,即这种效果不方便通过布局的组合方式实现,用这种方式需要自己支持wrap_content,并且支持padding也需要自己处理

    2、继承ViewGroup派生出特殊的Layout

    这种方法主要用于实现特殊的布局,即除了LinearLayout、RelativeLayout、FrameLayout这几种系统布局之外,我们重新定义的一种新布局。采用这种方式比较复杂一些,需要适当测处理vIewGroup的量值和布局这两个过程并同时处理子元素的测量和布局过程。

    3、继承特定的view(比如TextView)

    这种比较常见,一般用于扩展某种已有的View功能比如TextView,这种方法比较容易实现,也不需要自己支持warp_content和padding等。

    4、继承特定的ViewGroup(比如 LinearLayout)

    这种方法比较常见,当某种效果看起来像几种View组合在一起的时候可以采用这种方式来实现。采用这种方式不需要自己处理ViewGroup的测量和布局这两个过程,一般方式2能实现的效果这个方式都能实现,两者的区别在于方式2更接近View底层。

    相关文章

      网友评论

          本文标题:自定义view以及View的工作流程

          本文链接:https://www.haomeiwen.com/subject/klxbattx.html