你追我赶进度条
来源:互联网 发布:路由器故障 网络堵塞 编辑:程序博客网 时间:2024/06/05 17:19
package com.example.androidtest;import android.content.Context;import android.graphics.Canvas;import android.graphics.Color;import android.graphics.Paint;import android.graphics.Paint.Style;import android.graphics.RectF;import android.util.AttributeSet;import android.view.MotionEvent;import android.view.View;import android.view.animation.DecelerateInterpolator;import android.view.animation.LinearInterpolator;import android.widget.Scroller;public class CircleProgress extends View {public CircleProgress(Context context) {super(context);init();}public CircleProgress(Context context, AttributeSet attrs) {super(context, attrs);init();}public CircleProgress(Context context, AttributeSet attrs, int defStyleAttr) {super(context, attrs, defStyleAttr);init();}private void init() {timer=new Scroller(getContext(),new LinearInterpolator());paint=new Paint();paint.setStrokeWidth(circleWidth);paint.setStyle(Style.STROKE);paint.setColor(Color.BLUE);paint.setAntiAlias(true);}private Scroller timer;private int DURATION=5000;//动画持续时间private Paint paint;private int circleWidth=50;//环的宽度private boolean flag;private boolean isInit;private RectF arcRectf;private int centerX;private int centerY;private int radius;@Overrideprotected void onDraw(Canvas canvas) {if (!isInit) {int min=Math.min(getWidth(), getHeight())-circleWidth;centerX=getWidth()/2;centerY=getHeight()/2;radius=(min-circleWidth-circleWidth)/2;arcRectf=new RectF(centerX-radius,centerY-radius, centerX+radius,centerY+radius);isInit=true;}if (flag) {paint.setColor(Color.RED);canvas.drawCircle(centerX,centerY,radius,paint);paint.setColor(Color.BLUE);canvas.drawArc(arcRectf, timer.getCurrX(),timer.getCurrY(), false, paint);}else{paint.setColor(Color.BLUE);canvas.drawCircle(centerX,centerY,radius,paint);paint.setColor(Color.RED);canvas.drawArc(arcRectf, timer.getCurrX(),timer.getCurrY(), false, paint);}} @Overridepublic void computeScroll() {if (timer.computeScrollOffset()) {invalidate();}else{flag=!flag;timer.startScroll(-90, 0, 360, 360, DURATION);invalidate();}} }
0 0
- 你追我赶进度条
- 进度条
- 进度条
- 进度条
- 进度条
- 进度条
- 进度条
- 进度条
- 进度条
- 进度条
- 进度条
- 进度条
- 进度条
- 进度条
- 进度条
- 进度条
- 进度条
- 进度条
- 生产数据库性能优化之reorg和表重建
- Xcode 7免证书真机调试,跟99美刀说拜拜
- PostgreSQL的监控三(zabbix)
- (PHP)正则表达式-preg_replace()和preg_filter()
- C++ 动态特性
- 你追我赶进度条
- How to convert 0CALMONTH to 0FISCPER, 0FISCPER3,0FISCYEAR
- 博罗园洲丽景假日酒店 阳朔丽景假日酒店(桂林)交通方便不?阳朔丽景假日酒店
- hadoop关键进程
- 从”JAVA“而终 23:JQuery讲解
- Hbase1.1.2采用javaAPI插入批量数据
- CSS3自定义滚动条样式 -webkit-scrollbar
- XCode7 上传报错提示(ERROR ITMS-90168)
- MySQL在字段中使用select子查询