package com.bwie.test.custom_view;
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.MotionEvent;
import android.view.View;
import static android.R.attr.textSize;
public class VirtualKeyView extends View {
public VirtualKeyView(Context context) {
super(context);
}
public VirtualKeyView(Context context, AttributeSet attrs) {
super(context, attrs);
}
public VirtualKeyView(Context context, AttributeSet attrs, int defStyleAttr) {
super(context, attrs, defStyleAttr);
}
public VirtualKeyView(Context context, AttributeSet attrs, int defStyleAttr, int defStyleRes) {
super(context, attrs, defStyleAttr, defStyleRes);
}
//測量
@Override
protected void onMeasure(int widthMeasureSpec, int heightMeasureSpec) {
super.onMeasure(widthMeasureSpec, heightMeasureSpec);
}
//繪圖
@Override
protected void onDraw(Canvas canvas) {
super.onDraw(canvas);
//畫圓
//初始化畫筆 文字
Paint pa = new Paint();
//圓
Paint pa1 = new Paint();
Paint pa2 = new Paint();
Paint mCirclePaint = new Paint(Paint.ANTI_ALIAS_FLAG);
Paint mTextPaint = new Paint(Paint.ANTI_ALIAS_FLAG);
float wi = canvas.getWidth() / 2;
float he = canvas.getHeight() / 2;
RectF mRectF = new RectF(wi * 0.1f, wi * 0.1f, he * 0.9f,
he * 0.9f);
pa.setColor(Color.RED);
// pa.setARGB(255, 000, 33, 56);
pa2.setColor(Color.WHITE);
pa.setTextSize(40);
pa.setTextAlign(Paint.Align.CENTER);
pa1.setColor(Color.BLUE);
pa.setAntiAlias(true); //設定畫筆為無鋸齒
pa1.setAntiAlias(true);
//整個畫布的顔色
canvas.drawColor(Color.YELLOW);
canvas.drawCircle(wi, he, 200, pa);
canvas.drawCircle(wi, he, 150, pa2);
canvas.drawCircle(wi, he, 100, pa1);
canvas.drawText("aa", wi, he, pa);
canvas.drawCircle(wi, he, wi * 0.5f / 2, mCirclePaint);
canvas.drawArc(mRectF, 200, 200, false, pa);
canvas.drawText("你好", 0, "你好".length(), wi, he + textSize
/ 4, mTextPaint);
}
//定位
@Override
protected void onLayout(boolean changed, int left, int top, int right, int bottom) {
super.onLayout(changed, left, top, right, bottom);
}
@Override
public boolean onTouchEvent(MotionEvent event) {
return super.onTouchEvent(event);
}
}