Android 自定义 View 绘制
2017-08-23 19:41
381 查看
在 Android 自定义View 里面,介绍了自定义的View的基本概念。同时在 Android 控件架构及View、ViewGroup的测量 里面介绍了 Android 的坐标系 View、ViewGroup的测量方面的内容。
本文重点讲的是自定义View绘制的相关技术。
重点:
1. 掌握重写绘制方法,主要涉及到的方法是 onDraw()。 -- 本文说明
2. 掌握Canvas 的使用,主要是掌握Canvas的绘制类方法:drawXXX() 涉及的关键绘制对象 Paint。-- 本文说明
难点:
1. 了解和学会Canvas的辅助类的使用,主要是范围裁切和几何变换。-- 参考后面的推荐博客
2. 了解和学会使用不同的绘制方法来控制遮盖关系。 -- 参考后面的推荐博客
自定义绘制步骤:
1. 提前创建好
2. 创建Paint,其中几个最常用的方法:
3. 执行 Canvas 下的相关
因为时间关系,自定义View绘制就说到这里,基本上所有的图形绘制都是基于这三步的。
如果需要比较高级的特效的,参考朱凯大神的博客,本人就不多在这里赘述了:
http://hencoder.com/ui-1-1/ 绘制基础
http://hencoder.com/ui-1-2/ Paint 详解
http://hencoder.com/ui-1-3/ 文字的绘制
http://hencoder.com/ui-1-4/ Canvas 对绘制的辅助 视频地址: http://www.bilibili.com/video/av12937987/?zw
相关代码:http://pan.baidu.com/s/1eSznkJK
本文重点讲的是自定义View绘制的相关技术。
重点:
1. 掌握重写绘制方法,主要涉及到的方法是 onDraw()。 -- 本文说明
2. 掌握Canvas 的使用,主要是掌握Canvas的绘制类方法:drawXXX() 涉及的关键绘制对象 Paint。-- 本文说明
难点:
1. 了解和学会Canvas的辅助类的使用,主要是范围裁切和几何变换。-- 参考后面的推荐博客
2. 了解和学会使用不同的绘制方法来控制遮盖关系。 -- 参考后面的推荐博客
自定义绘制步骤:
1. 提前创建好
Paint对象,重写
onDraw(),把绘制代码写在
onDraw()里面,就是自定义绘制最基本的实现。
Paint paint = new Paint(); @Override protected void onDraw(Canvas canvas) { super.onDraw(canvas); // 不能缺失 // 绘制一个圆 canvas.drawCircle(300, 300, 200, paint); }
2. 创建Paint,其中几个最常用的方法:
Paint.setStyle(Style style) // 设置绘制模式 Paint.setColor(int color) // 设置颜色 Paint.setStrokeWidth(float width) // 设置线条宽度 Paint.setTextSize(float textSize) // 设置文字大小 Paint.setAntiAlias(boolean aa) // 设置抗锯齿开关
3. 执行 Canvas 下的相关
draw-打头的方法,例如
drawCircle()、
drawBitmap()。
drawColor(@ColorInt int color) // 颜色填充 -- 在整个绘制区域统一涂上指定的颜色。 drawCircle(float centerX, float centerY, float radius, Paint paint) // 画圆 -- 可以通过修改Paint的参数来画不同类型的圆形。 drawRect(float left, float top, float right, float bottom, Paint paint) // 画矩形 drawPoint(float x, float y, Paint paint) // 画点 -- setStrokeCap() 可以设置点的形状(矩形/圆形) drawPoints(float[] pts, int offset, int count, Paint paint) // drawPoints(float[] pts, Paint paint) 画点(多个) drawOval(float left, float top, float right, float bottom, Paint paint) // 画椭圆 drawLine(float startX, float startY, float stopX, float stopY, Paint paint) // 画线 drawLines(float[] pts, int offset, int count, Paint paint) / drawLines(float[] pts, Paint paint) // 画线(多个) drawRoundRect(float left, float top, float right, float bottom, float rx, float ry, Paint paint) // 画圆角矩形 drawArc(float left, float top, float right, float bottom, float startAngle, float sweepAngle, boolean useCenter, Paint paint) //绘制弧形或扇形 drawPath(Path path, Paint paint) // 画自定义图形
因为时间关系,自定义View绘制就说到这里,基本上所有的图形绘制都是基于这三步的。
如果需要比较高级的特效的,参考朱凯大神的博客,本人就不多在这里赘述了:
http://hencoder.com/ui-1-1/ 绘制基础
http://hencoder.com/ui-1-2/ Paint 详解
http://hencoder.com/ui-1-3/ 文字的绘制
http://hencoder.com/ui-1-4/ Canvas 对绘制的辅助 视频地址: http://www.bilibili.com/video/av12937987/?zw
相关代码:http://pan.baidu.com/s/1eSznkJK
相关文章推荐
- android绘制自定义view时,控件大小的测量与确定问题,代码演示
- Android进阶——自定义View之自己绘制彩虹圆环调色板
- Android自定义View解析之View的绘制流程(一)
- android自定义view–绘制顺序及相关原理
- Android 自定义View练习:风扇吹花瓣加载中loading进度条绘制
- android绘制view的过程(自定义view一)
- Android Study之自定义View进阶路:掌握绘制基本图形(一)
- android 自定义view,绘制与onTouchEvent事件(一)
- Android中View的绘制过程 onMeasure方法简述 附有自定义View例子
- Android自定义View系列之Path绘制仿支付宝支付成功动画
- Android UI 之居中绘制文本内容的正确方法——实现自定义一个TextView
- 【Android 应用开发】 自定义组件 宽高适配方法, 手势监听器操作组件, 回调接口维护策略, 绘制方法分析 -- 基于 WheelView 组件分析自定义组件
- android自定义View绘制字符串
- Android中View的绘制过程 onMeasure方法简述 附有自定义View例子
- Android 自定义View练习:雷达图(比重)绘制
- Android 自定义View基础-View的绘制
- android--自定义view的绘制
- Android中View的绘制过程 onMeasure方法简述 附有自定义View例子
- Android中View的绘制过程 onMeasure方法简述 附有自定义View例子
- Android开发使用自定义View将圆角矩形绘制在Canvas上的方法