android canvas 画闹钟 圆弧
16lz
2021-12-04
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 {@Overrideprotected void onCreate(Bundle savedInstanceState) {super.onCreate(savedInstanceState);//setContentView(R.layout.main);setContentView(new CustomView(this));} class CustomView extends View{ Paint paint; //private ArrayList 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); //设置画笔的宽度 float y=100; int count = 60; //总刻度数 for(int i=0 ; i
更多相关文章
- Android(安卓)PATH类动态绘制
- 【Android】【绘图】绘制波浪线动画
- android上,实现直接在屏幕上显示点击位置,方便调试。
- android View 绘制完成监听
- 用android:clipChildren来实现红心变大特效
- Android中View图形绘制基础
- [置顶] New Graphics Improvement in Android(安卓)4.3
- New Graphics Improvement in Android(安卓)4.3
- Android(安卓)自定义View(一)原理