会了这些,你也能成为自定义 View 大咖

10,661 阅读2分钟

自定义View

自定义View主要掌握以下四块内容:
1. 绘制机制:掌握onMeasure,onLayout,onDraw及相关类的使用。
2. 事件传递机制:掌握dispathTouchEvent(),onInterceptEvent(),onTouchEvent()三者的相关逻辑.
3. 属性动画,因为属性动画核心是对数值的变化,使用属性动画对值View做动画操作。
4. 相关手势类。

一.View绘制机制

掌握onMeasure,onLayout,onDraw及相关类的使用。

  1. 绘制机制
    view的绘制流程讲的最好的就是《Android开发艺术探究》这本书了,如果你还不是一名高工,想从事Android开发,这本书必备。不过还是给大家推荐一篇博文,相信很多人已经看过了
    公共技术点之 View 绘制流程
  2. 相关类的使用,主要是在onDraw()方法里,Paint、Cavan、Matrix等类的使用。

    GcsSloop---自定义View系列

    爱哥的---自定义View其实很简单

    二.事件传递机制

    掌握dispathTouchEvent(),onInterceptEvent(),onTouchEvent()三者的相关逻辑.

    讲的最好的,最易懂的就是《Android群英传》,这里也为大家推荐一篇博客,还是出自codeKK

    公共技术点之 View 事件传递

    三.属性动画

    公共技术点之 Android 动画基础

    值的学习的五个自定义View开源项目

    1. NumberProgressBar(代码家)
      这个项目可以熟练掌握如何控制view在界面中的位子

    2. SmallChart
      项目包括折线图、曲线图(可填充)、柱状图、扇形图、雷达图的绘制,让你熟练使用draw()相关类。

    3. CircleImageView
      一个圆形的ImageView

    4. PhotoView
      对ImageView支持各种手势操作,缩放、移动、旋转...熟练掌握手势操作。

    5. AndroidSwipeLayout
      综合