当前位置: 首页 > 科技观察

仿微信雷达扫描

时间:2023-03-15 01:30:24 科技观察

源码介绍:仿微信雷达扫描,仿安卓微信,云播雷达扫描动画效果点击中间黑圈开始扫描动画,再次点击重置,需要这个效果的朋友可以下载看看。源码效果:源码片段:packagecom.example.tz_demo_8_7;importandroid.content.Context;importandroid.graphics.Canvas;importandroid.graphics.Color;importandroid.graphics.Matrix;importandroid.graphics.Paint;importandroid.graphics.Paint。风格;importandroid.graphics.Shader;importandroid.graphics.SweepGradient;importandroid.os.Handler;importandroid.util.AttributeSet;importandroid.widget.FrameLayout;publicclassMyRadarViewextendsFrameLayout{privatePaintmPaintNormal;privateintw,h;//手机屏幕的宽高,雷达视图父容器的宽高/执行圆形旋转动画并刷新UIstart=start+2;matrix=newMatrix();matrix.postRotate(start,w/2,h/2);//设置画布旋转MyRadarView.this.invalidate();//刷新UIhandler.postDelayed(r,20);}};publicMyRadarView(Contextcontext,AttributeSetattrs){super(context,attrs);//初始化画笔initPaint();setBackgroundResource(R.drawable.bg);//获取手机屏幕的宽高this.w=context.getResources().getDisplayMetrics().widthPixels;this.h=context.getResources().获取显示指标()。heightPixels;handler.post(r);}/***@authorXubinSingleQQ:215298766*/privatevoidinitPaint(){mPaintNormal=newPaint();//创建画笔mPaintNormal.setColor(Color.parseColor("#A1A1A1"));mPaintNormal.setStrokeWidth(3);//设置线条mPaintNormal.setAntiAlias(true);//设置抗锯齿mPaintNormal.setStyle(Style.STROKE);//绘制渐变圆mPaintCircle=newPaint();mPaintCircle.setColor(0x9D00ff00);//16mPaintCircle.setAntiAlias(true);}/***测量控件的宽高*/@OverrideprotectedvoidonMeasure(intwidthMeasureSpec,intheightMeasureSpec){//设置这个view的宽高setMeasuredDimension(w,h);}/***确定控件的视图*/@OverrideprotectedvoidonDraw(Canvascanvas){//屏幕居中,x:w/2,y:h/2canvas.drawCircle(w/2,h/2,w/6,mPaintNormal);//画小圆canvas.drawCircle(w/2,h/2,2*w/6,mPaintNormal);//画中间的圆canvas.drawCircle(w/2,h/2,11*w/20,mPaintNormal);//画一个大圆canvas.drawCircle(w/2,h/2,7*h/16,mPaintNormal);//画一个大圆//画一个渐变圆Shadershader=newSweepGradient(w/2,h/2,Color.TRANSPARENT,Color.parseColor("#AAAAAAAA"));mPaintCircle.setShader(shader);canvas.concat(matrix);canvas.drawCircle(w/2,h/2,7*h/16,mPaintCircle);//绘制渐变圆super.onDraw(canvas);}}下载地址:http://down.51cto.com/data/2096545