绘制各种图形、文字使用Canvas类中drawRect、drawText等方法,详细函数列表以及参数说明可以查看sdk
图形的样式由paint参数控制
Paint类也有很多参数设置方法
坐标由Rect和RectF类管理
通过Canvas、Paint和Rect 就可以绘制游戏中需要的大多数基本图形了
需要注意的一些细节
绘制实心矩形,需要设置paint属性:paint.setStyle(Style.FILL); 通过Style的几个枚举值改变绘制样式
以下写的有点乱,随时添加一些记录点, 以后再整理啦~~~~~
1. Rect对象
一个区域对象Rect(left, top, right, bottom) , 是一个左闭右开的区域,即是说使用 Rect.contains(left, top)为true, Rect.contains(right, bottom)为false
2.drawLine方法
drawLine(float startX, float startY, float stopX, float stopY, Paint paint) 也是一个左闭右开的区间,只会绘制到stopX-1,stopY-1
验证方法:
Canvas c = canvas;
paint.setColor(Color.RED);
c.drawLine(x, y, x+c.getWidth()-1, y, paint);
c.drawLine(x, y+height-1, x+c.getWidth(), y+height-1, paint);
paint.setColor(Color.BLUE);
c.drawPoint(x+c.getWidth()-1, y, paint);
说明drawLine是没有绘制到右边最后一个点的
3.drawRect(Rect r, Paint paint)
当绘制空心矩形时,绘制的是一个左闭右闭的区域
验证方法:
rect.set(x, y, x+width, y+height);
paint.setStyle(Style.STROKE);
paint.setColor(Color.BLUE);
c.drawRect(rect, paint);
paint.setColor(Color.RED);
c.drawLine(x, y, x+width, y, paint);
c.drawLine(x, y+height, x+width, y+height, paint);
c.drawLine(x, y, x, y+height, paint);
c.drawLine(x+width, y, x+width, y+height, paint);
当绘制实心矩形时,绘制的是一个左闭右开的区域
验证方法:
rect.set(x, y, x+width, y+height);
paint.setColor(Color.RED);
c.drawLine(x, y, x+width, y, paint);
c.drawLine(x, y+height, x+width, y+height, paint);
c.drawLine(x, y, x, y+height, paint);
c.drawLine(x+width, y, x+width, y+height, paint);
paint.setStyle(Style.FILL);
paint.setColor(Color.BLUE);
c.drawRect(rect, paint);
这个规则跟j2me也是一样的,在j2me里,drawRect长宽会多画出1px。SDK的说明是:
The resulting rectangle will cover an area (width + 1) pixels wide by (height + 1) pixels tall. If either width or height is less than zero, nothing is drawn.
例如drawRect(10,10,100,1)绘制,结果是一个2px高的矩形,用fillRect(10,10,100,1),结果是一个1px高的矩形
原文:http://www.cnblogs.com/jacktu/archive/2008/12/18/1357640.html
分享到:
相关推荐
本篇将深入探讨Android绘图的方法,包括基本绘图、图形对象、画布操作以及动画制作。 一、基本绘图 Android中的绘图主要依赖于Canvas类,它是进行图形绘制的核心。当你需要在View或SurfaceView上绘制时,通常会在`...
在Android开发中,Eclipse曾是主流的集成开发环境(IDE),它提供了丰富的工具来帮助开发者构建应用程序。...动手实践是理解Android绘图机制的最佳方式,通过不断尝试和调试,你将能更好地掌握这一关键技能。
在Android开发中,自定义控件绘图是提升应用界面个性化和功能扩展性的重要手段。通过对View类的扩展,开发者可以实现自己的绘制逻辑,创建出独具特色的用户界面。本篇文章将深入探讨Android自定义控件绘图的核心概念...
"android绘图"这个主题,尤其是提到的"achartengine-1.0.0-demo-source"压缩包,是一个专门针对Android平台的图表绘制库,它为开发者提供了丰富的图表类型,包括柱状图、饼图、折线图等,方便地在应用程序中展示数据...
本篇将深入探讨`Android Canvas绘图`的相关知识点,包括基本概念、常用方法以及实际应用。 一、Canvas基础 1. `Canvas`对象:在Android中,`Canvas`是绘画的基础,它就像一块画布,我们可以在上面绘制各种元素。...
通过分析这个示例项目,开发者可以更好地理解Android绘图机制,并将其应用到自己的项目中。 综上所述,Android的绘图机制提供了丰富的功能,使开发者能够创造出独特且引人注目的用户体验。通过掌握色彩特效、图形...
【Android绘图APP开发详解】 在Android平台上,创建一个类似QQ截图的应用,允许用户在图片上绘制图形、添加文字,并支持缩放、平移及撤销操作,是一项涉及到多个技术领域的任务。以下将从核心功能、架构设计、主要...
3. 分析了 Android 底层开发的原理和方法,探讨了一种利用 JNI 机制进行 Android 底层 C/C++ 开发技术。JNI(Java Native Interface)是 Android 平台提供的一种机制,允许 Java 语言与 C/C++ 语言进行交互。通过...
"Android绘图基础"涵盖了Android系统中如何使用Canvas和Paint类进行基本的2D图形绘制。Canvas可以视为画布,而Paint则是画笔,它们共同帮助开发者在屏幕上绘制各种元素。 **Canvas:画布** Canvas是Android中的核心...
本文将深入探讨`ACHARTENGINE`在Android绘图引擎中的应用及其核心特性。 `ACHARTENGINE`是一个用Java编写的库,专为Android平台设计,支持多种类型的图表,包括折线图(LineChart)、饼图(PieChart)、柱状图(Bar...
本文将深入探讨Android绘图机制,包括Canvas、Paint、Bitmap以及自定义View的相关知识点,旨在帮助开发者掌握如何在Android应用中进行高效且富有创意的绘图操作。 首先,Canvas是Android绘图的核心对象,它提供了在...
本文将深入探讨Android绘图实现的相关知识点,包括基础概念、核心类、API以及实践技巧。 一、基础概念 1. Canvas与Bitmap:Canvas是Android绘图的主要工作台,你可以在这个画布上绘制各种图形。而Bitmap则可以看作...
在Android平台上,开发一款简单的涂鸦绘图应用是一项常见的任务,尤其对于初学者来说,它可以帮助理解Android...通过这个项目,开发者不仅可以掌握Android绘图的基础,还能了解到如何处理用户输入和实现自定义视图。
`Canvas`是Android系统中基础且强大的绘图工具,可以实现复杂的图形绘制和动画效果。 压缩包中的文件名未给出具体细节,但通常会包含源代码文件(如.java)、资源文件(如.xml)、以及可能的示例截图。源代码文件将...
在Android开发中,自定义绘图是一个非常重要的技术领域,它允许开发者超越系统提供的默认视图,创造出独具特色的用户界面。本示例“Android自定义绘图DrawColor”聚焦于一个简单的拾色器,该拾色器通过在一个圆形...
- View Canvas:适用于常规视图中的绘图,通常在自定义View的onDraw()方法中进行。例如,定义一个继承自View的类,重写onDraw()方法,并在其中进行绘制操作。 - SurfaceView Canvas:当需要高性能、低延迟的连续动画...
学习Android 有一段时间了,看完了Android SDK中的大部分文档,但是始终感觉自己还缺少很多,后来发现,Android SDK中只是介绍了Google自己开发的那一部分如何使用,Android中引用至Java的部分如何使用却没有说明。...
在Android的绘图系统中,`Canvas`和`Paint`是两个至关重要的组成部分。`Canvas`充当绘图的载体,提供了各种方法来绘制基本图形,如线条、圆形、矩形等。`Paint`则如同画家手中的画笔,用于设定绘制时的颜色、样式、...
在Android开发过程中,有时需要进行自定义视图或者复杂的图形绘制,这时,系统自带的SDK绘图工具可能就显得力不从心了。在这种情况下,开发者通常会寻找更加强大的第三方绘图工具来提升开发效率和图形表现力。...
* Android 平台上的绘图软件开发技术:包括 Android 平台上的绘图软件开发方法、Android 平台上的绘图软件开发工具、Android 平台上的绘图软件开发技术等。 * 绘图软件的设计和实现:包括 绘图软件的架构、绘图软件...