自定义首先接触到的时候觉得很有兴趣,便学习了一下
- HenCode自定义View教程,每个章节部分还会有配套的联系项目,难以理解的地方还有视频介绍,很用心的教程了
- HenCoder Android 开发进阶: 自定义 View 1-1 绘制基础
- HenCoder Android 开发进阶: 自定义 View 1-2 Paint 详解
- HenCoder Android 开发进阶:自定义 View 1-3 drawText() 文字的绘制
- HenCoder Android 开发进阶:自定义 View 1-4 Canvas 对绘制的辅助 clipXXX() 和 Matrix
- HenCoder Android 开发进阶:自定义 View 1-5 绘制顺序
- HenCoder Android 自定义 View 1-6:属性动画 Property Animation(上手篇)
- 绘制HenCoder Android 自定义 View 1-7:属性动画 Property Animation(进阶篇)
- HenCoder Android 自定义 View 1-8 硬件加速
- HenCoder Android UI 部分 2-1 布局基础
- HenCoder Android UI 部分 2-2 全新定义 View 的尺寸
- HenCoder Android UI 部分 2-3 定制 Layout 的内部布局
- HenCoder 3-1 触摸反馈
-
GcsSloop大神的自定义View教程也非常不错,覆盖前面且详细
基础篇
进阶篇
- 安卓自定义View进阶 - 分类和流程
- 安卓自定义View进阶 - Canvas之绘制图形
- 安卓自定义View进阶 - Canvas之画布操作
- 安卓自定义View进阶 - Canvas之图片文字
- 安卓自定义View进阶 - Path之基本操作
- 安卓自定义View进阶 - Path之贝塞尔曲线
- 安卓自定义View进阶 - Path完结篇
- 安卓自定义View进阶 - PathMeasure
- 安卓自定义View进阶 - Matrix原理
- 安卓自定义View进阶 - Matrix详解
- 安卓自定义View进阶 - Matrix Camera
- 安卓自定义View进阶 - 事件分发机制原理
- 安卓自定义View进阶 - 事件分发机制详解
- 安卓自定义View进阶 - MotionEvent详解
- 安卓自定义View进阶 - 特殊控件的事件处理方案
- 安卓自定义View进阶 - 多点触控详解
- 安卓自定义View进阶 - 手势检测(GestureDecetor)
- 安卓自定义View进阶 - 缩放手势检测(ScaleGestureDecetor)
学习完以上的教程后,还是需要自己动手来实践一下。
1.画线循迹
- 1.画出轨迹 :
先试着完成一个触控画线的功能,就是在屏幕上触控画线,画线需要一个Paint个一个Path,然后还要重写onToucheEvent()记录移动的位置,再连线即可。
onTouchEvent()
public boolean onTouchEvent(MotionEvent event) {
switch (event.getAction()) {
case MotionEvent.ACTION_DOWN:
//设置起始点
mStartX = event.getX();
mStartY = event.getY();
//清空原有的轨道
mMovePath.reset();
//移动到起始点
mMovePath.moveTo(mStartX, mStartY);
return true;
case MotionEvent.ACTION_MOVE:
final float endX = (mStartX + event.getX()) / 2;
final float endY = (mStartY + event.getY()) / 2;
//画出轨道曲线,quad是二次曲线
mMovePath.quadTo(mStartX