三个值得学习的自定义 View 开源项目
自定义 View 主要掌握以下四块内容:
1、绘制机制:掌握 onMeasure,onLayout,onDraw 及相关类的使用;
2、事件传递机制:掌握 dispathTouchEvent(),onInterceptEvent(),onTouchEvent()三者的相关逻辑;
3、属性动画:因为属性动画核心是对数值的变化,使用属性动画对值 View 做动画操作;
4、相关手势类。
下面推荐三个开源项目,非常适合学习自定义 View,好好看看源码,一定让你对自定义 View 有更深的认识。
1、圆形图片库 CircleImageView
图片裁剪功能是 Android 开发最常见的功能之一,而圆形图片也是非常常见的功能,常用于个人图像。GitHub 上开源的库 CircleImageView 就实现了这样的功能,如果看 CircleImageView 源码就一个类,直接继承 ImageView,通过复写 ImageView 一些方法绘制成圆形图片,是一个非常值得去学习自定义 View 开源项目。
GitHub 地址
https://github.com/hdodenhof/CircleImageView
2、带数字的 ProgressBar
代码家作品,带有数字的 ProgressBar,效果可谓惊艳,继承 View 实现 ProgressBar,虽然现在不更新了,但却是一个十分值得去学习自定义 View 开源项目。
GitHub 地址
https://github.com/daimajia/NumberProgressBar
3、图片缩放库 PhotoView
对 ImageView 支持各种手势操作,缩放、移动、旋转,同样是一个十分值得去学习自定义 View 开源项目,可以让你熟练掌握手势操作。
GitHub 地址
https://github.com/chrisbanes/PhotoView
- End -
Android 画布CanvasAndroid事件传递机制分析
评论