package com.cy.zdyview; import android.annotation.TargetApi; import android.content.Context; import android.graphics.Canvas; import android.graphics.Color; import android.graphics.Paint; import android.graphics.Path; import android.os.Build; import android.util.AttributeSet; import android.view.KeyEvent; import android.view.MotionEvent; import android.view.View; import org.jetbrains.annotations.Nullable; import java.util.ArrayList; import java.util.List; import java.util.Random; /** * Created by bower on 2018/7/6. */ public class MyView extends View { public MyView(Context context) { super(context); init(); } public MyView(Context context, AttributeSet attrs) { super(context, attrs); init(); } public MyView(Context context, AttributeSet attrs, int defStyleAttr) { super(context, attrs, defStyleAttr); init(); } @TargetApi(Build.VERSION_CODES.LOLLIPOP) public MyView(Context context, @Nullable AttributeSet attrs, int defStyleAttr, int defStyleRes) { super(context, attrs, defStyleAttr, defStyleRes); init(); } Paint mPaint=new Paint(); Path mPath=new Path(); int x1=0,x2=100,x3=200; private void init() { mPaint = new Paint(); // 抗锯齿 mPaint.setAntiAlias(true); // 防抖动 mPaint.setDither(true); } @Override protected void onDraw(Canvas canvas) { super.onDraw(canvas); // 画笔颜色 mPaint.setColor(Color.RED); // 笔宽 mPaint.setStrokeWidth(6); // 空心 mPaint.setStyle(Paint.Style.FILL); mPaint.setAlpha((int)(255-x1*255/330)); canvas.drawCircle(canvas.getWidth()/2,canvas.getHeight()/2,x1, mPaint); mPaint.setAlpha((int)(255-x2*255/330)); canvas.drawCircle(canvas.getWidth()/2,canvas.getHeight()/2,x2, mPaint); mPaint.setAlpha((int)(255-x3*255/330)); canvas.drawCircle(canvas.getWidth()/2,canvas.getHeight()/2,x3, mPaint); x1=x1+1; x2=x2+1; x3=x3+1; if(x1==330) x1=0; if(x2==330) x2=0; if(x3==330) x3=0; postInvalidateDelayed(13); } }
安卓自定义view 波纹效果
最新推荐文章于 2022-12-29 23:58:29 发布