android Canvas 绘图系列(一)

首先解释一下:Canvas、Paint
、Rect.

Canvas绘图有三个要点(你完全可以开一下脑洞):

1.Canvas画布,就像是我们画画用的纸。图形绘制在Canvas画布之上。

2.Paint画笔,就像现实中的画笔一样,可以设置颜色,字体,透明度等。

3.Rect绘画路径,用于绘制不同形状如:矩形、椭圆形等。

这里主要讲述的是View中的onDraw 中的canvas参数,至于画板之类的暂且不提。

在自定义控件中常重写父类onDraw改变view的属性。

view源码中的onDraw方法如下:

 protected void onDraw(Canvas canvas) {
   }

view.java源码中的onDraw方法是protected,明显是用于子类重写的。

官方文档中对这个方法的注释是:

Implement this to do your drawing(这里实现绘制view)

Canvas canvas的注释是: the
canvas on which the background will be drawn (当前view的画布)

总结就是在这个方法绘制当前视图,并且canvas为当前视图的画布

时间: 2024-10-13 17:36:34

android Canvas 绘图系列(一)的相关文章

android Canvas 绘图系列(二)

这里主要讲Paint 画笔.还是搬运和翻译官方文档吧. 1.setAlpha(int a)  设置透明度,参数范围是0-255. 如需要设置改属性:建议改成(0-1),然后乘以255. 2.setColor(int color) 设置画笔颜色其中包含透明度,参数为 0xff777777类型,0x是16进制标识,后两个ff是表示透明度,后六位是颜色值 3.setARGB(int a, int r, int g, int b) 设置rgb颜色值和透明度; 第一个参数为透明度; 第二个为red色值;

【转】Android Canvas绘图详解(图文)

转自:http://www.jcodecraeer.com/a/anzhuokaifa/androidkaifa/2012/1212/703.html Android Canvas绘图详解(图文) 泡在网上的日子 发表于 2012-12-12 20:29 第 63165 次阅读 Canvas,android 15 Android中使用图形处理引擎,2D部分是android SDK内部自己提供,3D部分是用Open GL ES 1.0.今天我们主要要了解的是2D相关的,如果你想看3D的话那么可以跳

android+ canvas绘图后保存图片

canvas绘图后保存图片,分两种情况,一种:自己new一个canvas对象. 第二种:在onDraw函数作为参数引入Canvas 第一种情况: 建一个空的bitmap对象,然后在初始化画布时,把它作为参数带入,之后canvas所做的绘图操作,都是在该bitmap上,只要保存该bitmap对象即可.如下代码:画一个蓝色的圆环: //这边直接用canvas画,然后保存 Bitmap bitmap = Bitmap.createBitmap(700,700, Bitmap.Config.ARGB_8

Android Canvas绘图详解(图文) - 泡在网上的日子

body { font-family: "Microsoft YaHei UI","Microsoft YaHei",SimSun,"Segoe UI",Tahoma,Helvetica,Sans-Serif,"Microsoft YaHei", Georgia,Helvetica,Arial,sans-serif,宋体, PMingLiU,serif; font-size: 10.5pt; line-height: 1.5;

Android Canvas绘图详解(图文)

编辑推荐:稀土掘金,这是一个针对技术开发者的一个应用,你可以在掘金上获取最新最优质的技术干货,不仅仅是Android知识.前端.后端以至于产品和设计都有涉猎,想成为全栈工程师的朋友不要错过! Android中使用图形处理引擎,2D部分是android SDK内部自己提供,3D部分是用Open GL ES 1.0.今天我们主要要了解的是2D相关的,如果你想看3D的话那么可以跳过这篇文章. 大 部分2D使用的api都在android.graphics和android.graphics.drawabl

HTML5 Canvas绘图系列之一:圆弧等基础图形的实现

之前的一个微信项目已经要结项了,最近整理一下项目中使用较多的canvas画图方面的知识吧,打算写个3,4篇的样子.本篇主要介绍基础操作和弧线画法. 之后再写一下趋势图,直方图,文本图像处理的. 言归正传,canvas元素本身是一个容器元素,提供一块画布,用脚本来实现想要画什么.为了演示使用,我们新增一个空的aspx页. 首先,我们新增一个canvas元素: <canvas id="myConvas" style="display:block; margin: 0 aut

Android 2D绘图解析之 Canvas,Paint

原创文章,转载请注明 ( 来自:http://blog.csdn.net/leejizhou/article/details/51524948 李济洲的博客 ) [Android 2D绘图解析]系列文章将全面介绍Android绘图相关,这篇简单介绍下如何利用Android API进行一些简单图形的绘制,绘图的前提是需要继承自View,然后重写它的onDraw(Canvas canvas) 方法即可. 首先我们新建一个类继承自View,并重写onDraw方法. package com.leejz.

Android自定义组件系列【12】——非UI线程绘图SurfaceView

一.SurfaceView的介绍 在前面我们已经会自定义View,使用canvas绘图,但是View的绘图机制存在一些缺陷. 1.View缺乏双缓冲机制. 2.程序必须重绘整个View上显示的图片,比较耗资源. 3.非UI线程无法更新View组件,所以会占用主线程资源,当需要在主线程中处理逻辑的时候会很慢. 在Android中为我们提供了一个SurfaceView来替代View实现绘制图形,一般在游戏绘图方面应用较广,所以如果是比较复杂的绘图建议使用SurfaceView. 二.SurfaceV

Android中Canvas绘图之Shader使用图文详解

概述 我们在用Android中的Canvas绘制各种图形时,可以通过Paint.setShader(shader)方法为画笔Paint设置shader,这样就可以绘制出多彩的图形.那么Shader是什么呢?做过GPU绘图的同学应该都知道这个词汇,Shader就是着色器的意思.我们可以这样理解,Canvas中的各种drawXXX方法定义了图形的形状,画笔中的Shader则定义了图形的着色.外观,二者结合到一起就决定了最终Canvas绘制的被色彩填充的图形的样子. 类android.graphics