这是一个自己自定义简单的画笔的使用方法,先获屏幕的大小然后在通过画笔的简单使用实现折线图,圆环柱形图的简单使用
package com.example.canvas;
import android.content.Context;
import android.graphics.Bitmap;
import android.graphics.BitmapFactory;
import android.graphics.BlurMaskFilter;
import android.graphics.Canvas;
import android.graphics.Color;
import android.graphics.Paint;
import android.graphics.Path;
import android.support.v7.app.AppCompatActivity;
import android.os.Bundle;
import android.util.DisplayMetrics;
import android.view.View;
public class MainActivity extends AppCompatActivity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(new pointShow(this));
}
class pointShow extends View{
private int scrHeight;
private int scrWidth;
public pointShow(Context context) {
super(context);
this.setLayerType(View.LAYER_TYPE_SOFTWARE,null);
//屏幕信息
DisplayMetrics dm = getResources().getDisplayMetrics();
//獲取屏幕的高
scrHeight = dm.heightPixels;
//獲取屏幕的寬
scrWidth = dm.widthPixels;
//设置边缘特殊效果
}
@Override
protected void onDraw(Canvas canvas) {
super.onDraw(canvas);
BlurMaskFilter PaintBGBlur = new BlurMaskFilter(
1, BlurMaskFilter.Blur.INNER);
Paint pin=new Paint();
//设置画笔颜色
pin.setColor(Color.RED);
//设置画笔背景颜色
canvas.drawColor(Color.WHITE);
//设置空心
pin.setStyle(Paint.Style.STROKE);
pin.setStrokeWidth(4);
pin.setMaskFilter(PaintBGBlur);
//yuan圆的画法 (x轴位置,y轴位置,半径,画笔);
canvas.drawCircle(60,240,30,pin);
pin.setAntiAlias(true);
//线的画法
canvas.drawLine(10,10,60,120,pin);
//折线的画法
Path path=new Path();
path.moveTo(120,140);
path.lineTo(160,60);
path.lineTo(200,80);
pin.setAntiAlias(true);
canvas.drawPath(path,pin);
}
}
}