package com.basic.security.widget; import android.content.Context; import android.graphics.BlurMaskFilter; import android.graphics.Canvas; import android.graphics.Color; import android.graphics.Paint; import android.graphics.Rect; import android.graphics.RectF; import android.util.AttributeSet; import android.view.View; import com.basic.security.R; import com.basic.security.base.BaseApplication; public class FaceOuterBorderView extends View { private Paint mPaint; private int lineLong; int mlineWidth = R.dimen.h8; public FaceOuterBorderView(Context context) { super(context); init(); } public FaceOuterBorderView(Context context, AttributeSet attrs) { super(context, attrs); init(); } public FaceOuterBorderView(Context context, AttributeSet attrs, int defStyle) { super(context, attrs, defStyle); init(); } private void init(){ setLayerType(LAYER_TYPE_SOFTWARE,null); mPaint = new Paint(); mPaint.setColor(Color.parseColor("#74F8F5")); mPaint.setStrokeWidth(BaseApplication.getApplication().activity.getResources().getDimension(mlineWidth)); lineLong = (int)BaseApplication.getApplication().activity.getResources().getDimension(R.dimen.h55); } @Override protected void onDraw(Canvas canvas) { super.onDraw(canvas); int width = this.getWidth(); int height = this.getHeight(); // 上边 canvas.drawLine(0,0,lineLong, 0, mPaint); canvas.drawLine(width-lineLong,0,width, 0, mPaint); // 右边 canvas.drawLine(width,0,width, lineLong, mPaint); canvas.drawLine(width,height-lineLong,width, height, mPaint); // 下边 canvas.drawLine(width-lineLong,height,width, height, mPaint); canvas.drawLine(0,height,lineLong, height, mPaint); // 左边 canvas.drawLine(0,0,0, lineLong, mPaint); canvas.drawLine(0,height-lineLong,0, height, mPaint); } public void setLiveness(boolean liveness) { if (liveness) { mPaint.setColor(Color.parseColor("#74F8F5")); } else { mPaint.setColor(Color.parseColor("#FF0000")); } } public void setPaintColor(int color) { mPaint.setColor(color); } public void setLineLong(int lineLong) { this.lineLong = lineLong; } public void setBorderColor(int borderColor) { mPaint.setColor(borderColor); } }