自定义View(一)自定义View的分类

来源:互联网 发布:京东销量查询软件 编辑:程序博客网 时间:2024/06/06 17:16

         算起来,接触自定义View也有大半年时间了,一直没机会好好总结一下,好记性不如烂笔头,遂决定从今天开始系统的整理相关知识。

       还是那句话,小女不才,入行时间短,火候尚浅,有说错的地方,还请各位侠士不吝赐教,在此谢过。(*≧▽≦*)

       更多内容可查看:

       (一)自定义View的分类

       (二)自定义View的构造函数及自定义属性点击打开链接

       (三)自定义View常用的方法(测量、绘制、位置)

       (四)自定义View的具体实现

       (五)事件分发机制

       一、自定义View的分类

        关于自定义控件的分类,看了很多资料以后,下面两种分类法是我个人比较认同的(非我本人原创)。

       ①按照所继承的基类划分 


        继承View:这种自定义控件最大的特点是不包含子控件,当我们需要定制一个不同于原生控件且有“个性”的控件(如圆形头像、水波进度条)时,我们采用这种方式,很多情况下可以采用其他方式代替,比如圆形头像完全可以使用imageView+圆形背景图,但后者往往内存消耗过大,制作素材麻烦。

       继承ViewGroup:这种自定义控件,常常利用现有组件(各种layout)的特定布局方式来组成新的控件。如流式标签。


       ②按照实现的方式划分

     

       第二种分类方式较之前者,更注重于自定义View的实现方式。

      自绘控件:顾名思义,这一类自定义控件注重控件本身的特性,如形状、动画效果等,一般继承View(但也不绝对,看具体需求),重写onDraw()方法完成绘制,具体绘制的过程请参照 (三)自定义View常用的方法(测量、绘制、位置)

      组合控件:组合控件的特点是使用原生控件组合成新的控件。

      继承控件:继承控件的特点是利用了父控件本身的一些特性,在此基础上添加新的功能。充分利用已有资源,避免了重复的开发。

      掌握自定义控件的分类,让我们面对具体的需求能快速而准确的决定使用哪一种定义方式,是学习自定义控件最基础的一步。

   








1 0
原创粉丝点击