android canvas 画闹钟 圆弧

package com.example.hui; import java.util.ArrayList; import android.os.Bundle; import android.app.Activity; import android.content.Context; import android.graphics.Canvas; import android.graphics.Color; import android.graphics.Paint; import android.graphics.Path; import android.graphics.RectF; import android.graphics.Paint.Style; import android.view.View; public class MainActivity extends Activity { @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); //setContentView(R.layout.main); setContentView(new CustomView(this)); } class CustomView extends View{Paint paint; //private ArrayList【android canvas 画闹钟 圆弧】 graphics = new ArrayList(); // PointF point; public CustomView(Context context) { super(context); paint = new Paint(); //设置一个笔刷大小是3的黄色的画笔 paint.setColor(Color.RED); paint.setStrokeJoin(Paint.Join.ROUND); paint.setStrokeCap(Paint.Cap.ROUND); paint.setStrokeWidth(3); }//在这里我们将测试canvas提供的绘制图形方法 @Override protected void onDraw(Canvas canvas) { //绘制黑色背景 Paint b = new Paint(); b.setColor(Color.BLACK); RectF rect = new RectF(0, 0, 900, 900); canvas.drawRect(rect, b); //画大圆圈 paint.setAntiAlias(true); paint.setStyle(Style.STROKE); canvas.translate(canvas.getWidth()/2, 200); //将位置移动画纸的坐标点:150,150 canvas.drawCircle(0, 0, 100, paint); //画圆圈//使用path绘制路径文字 canvas.save(); canvas.translate(-75, -75); Path path = new Path(); path.addArc(new RectF(0,0,150,150), -180, 180); Paint citePaint = new Paint(paint); citePaint.setTextSize(14); citePaint.setStrokeWidth(1); //设置画笔的宽度 canvas.drawTextOnPath("ninngsnhenngcnai@2015080558s", path, 28, 0, citePaint); canvas.restore(); //画刻度 Paint tmpPaint = new Paint(paint); //小刻度画笔对象 tmpPaint.setStrokeWidth(1); //设置画笔的宽度floaty=100; int count = 60; //总刻度数for(int i=0 ; i


    推荐阅读