感觉话一个圆形进度条挺简单的 ,但是却偏偏给了几张图片让你话,说实话我没接触过,感觉好难,还好百度有大把的资源,一番努力下终于画出来了。 代码如下。
package com.etong.cpms.widget;
import java.net.Proxy.Type;
import com.etong.cpms.activity.R;
import android.content.Context;
import android.graphics.Bitmap;
import android.graphics.BitmapFactory;
import android.graphics.Canvas;
import android.graphics.Color;
import android.graphics.Paint;
import android.graphics.Paint.Align;
import android.graphics.PorterDuff;
import android.graphics.PorterDuffXfermode;
import android.graphics.Rect;
import android.graphics.RectF;
import android.graphics.Paint.FontMetricsInt;
import android.graphics.Typeface;
import android.util.AttributeSet;
import android.view.MotionEvent;
import android.view.View;
/**
*
*/
public class MyView extends View {
private Bitmap bmpBg;
private Bitmap bmpForbg;
private Bitmap bmpDb;
private Bitmap bmpNq;
private PorterDuffXfermode mMode;
private Paint mXferPaint;
private RectF mOval;
private int mPercent;
private Paint paint;
private Rect targetRect;
private FontMetricsInt fontMetrics;
/**
*
*
* @param context
*/
public MyView(Context context) {
super(context);
}
int widthPixels;
int heightPixels;
int centerX;
int centerY;
@Override
protected void onSizeChanged(int w, int h, int oldw, int oldh) {
super.onSizeChanged(w, h, oldw, oldh);
widthPixels = w;
heightPixels = h;
centerX = widthPixels / 2;
centerY = heightPixels / 2;
}
public MyView(Context context, AttributeSet attrs) {
super(context, attrs);
setFocusable(true);
// setFocusableInTouchMode(true);
bmpBg = (Bitmap) BitmapFactory.decodeResource(getResources(),
R.drawable.wq);
bmpForbg = (Bitmap) BitmapFactory.decodeResource(getResources(),
R.drawable.mdwq);
bmpDb = (Bitmap) BitmapFactory.decodeResource(getResources(),
R.drawable.db);
bmpNq = (Bitmap) BitmapFactory.decodeResource(getResources(), R.drawable.n