实现此功能分成三个类:
1.Draw 类:画图类,负责配置画图的Canvas,Paint,Bitmap
2.CameraPreview类:显示摄像头预览类,负责配置摄像头的Camera,SurfaceView
3.MainActivity类:主界面类,负责主界面的添加视图和删除视图,以及释放资源等操作
Draw类:
package com.example.open_camera;
import android.content.Context;
import android.graphics.Bitmap;
import android.graphics.Canvas;
import android.graphics.Color;
import android.graphics.Paint;
import android.view.MotionEvent;
import android.view.View;
public class Draw extends View implements View.OnClickListener
{
private float start_x;//声明起点坐标x
private float start_y;//声明起点坐标y
private float end_x;//声明终点坐标x
private float end_y;//声明终点坐标y
private Canvas canvas;//声明画笔
private Paint paint;//声明画布
private Bitmap bitmap;//声明位图
public Draw(Context context)
{
super(context);
// TODO 自动生成的构造函数存根
//创建一个画笔
paint = new Paint(Paint.DITHER_FLAG);
//设置位图的宽高,采用32位ARGB位图模式
bitmap = Bitmap.createBitmap(320, 480, Bitmap.Config.ARGB_8888);
canvas = new Canvas(bitmap);
paint.setStyle(Paint.Style.STROKE);//设置非填充
paint.setStrokeWidth(5);//笔宽5像素
paint.setColor(Color.RED);//设置为红笔
paint.setAntiAlias(true);//锯齿不显示
paint.setDither(true);//设置图像抖动处理
paint.setStrokeJoin(Paint.Join.ROUND);//设置图像的结合方式
paint.setStrokeCap(Paint.Cap.ROUND);//