Awesome
自定义View
自定义View主要掌握以下四块内容:
- 绘制机制:掌握onMeasure,onLayout,onDraw及相关类的使用。
- 事件传递机制:掌握dispathTouchEvent(),onInterceptEvent(),onTouchEvent()三者的相关逻辑.
- 属性动画,因为属性动画核心是对数值的变化,使用属性动画对值View做动画操作。
- 相关手势类。
一.View绘制机制
掌握onMeasure,onLayout,onDraw及相关类的使用。
- 绘制机制
view的绘制流程讲的最好的就是《Android开发艺术探究》这本书了,如果你还不是一名高工,想从事Android开发,这本书必备。不过还是给大家推荐一篇博文,相信很多人已经看过了
公共技术点之 View 绘制流程 - 相关类的使用,主要是在onDraw()方法里,Paint、Cavan、Matrix等类的使用。
####GcsSloop---自定义View系列
* 安卓自定义View基础 - 坐标系
* 安卓自定义View基础 - 角度弧度
* 安卓自定义View基础 - 颜色
* 安卓自定义View进阶 - 分类和流程
* 安卓自定义View进阶 - 绘制基本图形
* 安卓自定义View进阶 - 画布操作
* 安卓自定义View进阶 - 图片文字
* 安卓自定义View进阶 - Path基本操作
* 安卓自定义View进阶 - 贝塞尔曲线
* 安卓自定义View进阶 - Path完结篇(伪)
* 安卓自定义View进阶 - Path玩出花样(PathMeasure)
* 安卓自定义View进阶 - Matrix原理
* 安卓自定义View进阶 - Matrix详解
* 安卓自定义View进阶 - Matrix Camera
* 安卓自定义View进阶 - 事件分发机制原理
爱哥的---自定义View其实很简单
- 自定义控件其实很简单1/12
- 自定义控件其实很简单1/6
- 自定义控件其实很简单1/4
- 自定义控件其实很简单1/3
- 自定义控件其实很简单5/12
- 自定义控件其实很简单1/2
- 自定义控件其实很简单7/12
- 自定义控件其实很简单2/3
- 自定义控件其实很简单3/4
二.事件传递机制
掌握dispathTouchEvent(),onInterceptEvent(),onTouchEvent()三者的相关逻辑.
讲的最好的,最易懂的就是《Android群英传》,这里也为大家推荐一篇博客,还是出自codeKK
三.属性动画
值的学习的五个自定义View开源项目
-
NumberProgressBar(代码家)
<img src="screenshots/NumberProgressBar.gif" width="70%" />
这个项目可以熟练掌握如何控制view在界面中的位子 -
SmallChart
<img src="screenshots/pie.png" width="50%" />
项目包括折线图、曲线图(可填充)、柱状图、扇形图、雷达图的绘制,让你熟练使用draw()相关类。 -
CircleImageView
<img src="screenshots/circleview.png" width="50%" />
一个圆形的ImageView -
PhotoView
对ImageView支持各种手势操作,缩放、移动、旋转...熟练掌握手势操作。 - <img src="screenshots/AndroidSwipeLayout.gif" width="50%" />