从头学起android<android基本的绘图.四十六.>

简介:
在一般的图形渲染用户通常只需要重写onDraw()该方法可以是。但是假设,才能真正完成绘图操作。此外,我们需要掌握的四大核心经营类:
android.graphics.Bitmap:主要表示的是一个图片的存储空间。所包括的图片能够来自于文件或由程序创建;
android.graphics.Paint:基本的画图工具类,能够指定画图的样式;
android.graphics.Canvas:是一个操作画图以及Bitmap的平台,相当于提供了一个画板的功能,在onDraw()方法的參数中也定义了此类型的參数,能够依靠此类完毕详细的画图操作。
android.graphics.drawable.Drawable:绘制图形的公共父类,能够绘制各种图形、图层等。



自己定义MyView组件

<span style="font-size:18px;"><LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:tools="http://schemas.android.com/tools"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    
    tools:context=".MainActivity" >

    <com.example.paintpic.MyView
        android:id="@+id/Myview"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
></com.example.paintpic.MyView>
</LinearLayout>
</span>

主界面
<span style="font-size:18px;">package com.example.paintpic;

import android.os.Bundle;
import android.app.Activity;
import android.view.Menu;

public class MainActivity extends Activity {

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
    }


    
}
</span>

MyView设置
<span style="font-size:18px;">package com.example.paintpic;

import android.content.Context;
import android.graphics.Canvas;
import android.graphics.Color;
import android.graphics.Paint;
import android.graphics.RectF;
import android.util.AttributeSet;
import android.view.View;

public class MyView extends View {

	public MyView(Context context, AttributeSet attrs) {
		super(context, attrs);
		// TODO Auto-generated constructor stub
	}

	@Override
	protected void onDraw(Canvas canvas) {
		// TODO Auto-generated method stub
		// canvas是画板对象,背景是白色的
		canvas.drawColor(Color.WHITE);
		// paint画笔工具
		Paint paint = new Paint();
		// 设置画笔颜色为蓝色
		paint.setColor(Color.BLUE);
		// 为画板上画圆。圆心(50,50)半径50
		canvas.drawCircle(50, 50, 50, paint);
		// 设置画笔颜色的颜色为红色
		paint.setColor(Color.RED);
		// 画矩形
		canvas.drawRect(100, 0, 160, 80, paint);
		// 画笔颜色为绿色
		paint.setColor(Color.GREEN);
		// 画直线
		canvas.drawLine(50, 110, 200, 110, paint);
		paint.setColor(Color.YELLOW);
		// Rect rect=new Rect(120, 120, 300, 300);
		// canvas.drawRect(rect, paint);

		// 使用RectF画多边形
		RectF oval = new RectF();
		oval.set(10.0f, 140.0f, 110.0f, 200.0f);
		canvas.drawOval(oval, paint);

		oval = new RectF();
		oval.set(150.0f, 140.0f, 210.0f, 200.0f);
		canvas.drawArc(oval, 150.0f, 140.0f, true, paint);
	}
}
</span>

使用Canvas和point组件能够绘制出各种各样的图形,多用于游戏的开发。感兴趣的朋友能够自己了解

根据第预测:bitmap图形组件

版权声明:本文博客原创文章,博客,未经同意,不得转载。








本文转自mfrbuaa博客园博客,原文链接:http://www.cnblogs.com/mfrbuaa/p/4628322.html,如需转载请自行联系原作者


相关文章
|
Shell 编译器 C语言
【Android构建篇】MakeFile语法&lt; 1 &gt;
对于一个看不懂Makefile构建文件规则的人来说,这个Makefile语法和shell语法是真不一样,但是又引用了部分shell语法,可以说是shell语法的子类,Makefile语法继承了它。 和shell语法不一样,这个更难一点,而且不太容易懂,所以后续还会持续更新这篇文章。
158 0
【Android构建篇】MakeFile语法&lt; 1 &gt;
|
Shell C语言 Android开发
【Android构建篇】MakeFile语法&lt; 3 &gt;
对于一个看不懂Makefile构建文件规则的人来说,这个Makefile语法和shell语法是真不一样,但是又引用了部分shell语法,可以说是shell语法的子类,Makefile语法继承了它。 和shell语法不一样,这个更难一点,而且不太容易懂,所以后续还会持续更新这篇文章。
113 0
|
存储 Shell 编译器
【Android构建篇】MakeFile语法&lt; 2 &gt;
对于一个看不懂Makefile构建文件规则的人来说,这个Makefile语法和shell语法是真不一样,但是又引用了部分shell语法,可以说是shell语法的子类,Makefile语法继承了它。 和shell语法不一样,这个更难一点,而且不太容易懂,所以后续还会持续更新这篇文章。
149 0
|
前端开发 Android开发
【Android 应用开发】Canvas 精准绘制文字 ( 文本边界坐标解析 | 绘图位置 )
【Android 应用开发】Canvas 精准绘制文字 ( 文本边界坐标解析 | 绘图位置 )
333 0
【Android 应用开发】Canvas 精准绘制文字 ( 文本边界坐标解析 | 绘图位置 )
|
前端开发 Android开发
6.4 Android绘图技巧(Primary:四大方法&Layer)
1.Canvas的四大金刚 Canvas.save()这个方法从字面上可以理解为保存画布,作用就是将之前的所有已绘制的图像保存起来。让后续的操作就好像在一个新的图层上操作一样,这一点与Photoshop中的图层理解基本一致。
818 0
|
XML Android开发 数据格式
|
前端开发 Android开发
|
前端开发 开发工具 Android开发
|
前端开发 Java Android开发