Android -- 自定义View小Demo,关于Path类的使用

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Android -- 自定义View小Demo,关于Path类的使用相关的知识,希望对你有一定的参考价值。

1,在我们知道自定义view中onDraw()方法是用于绘制图形的,而Path类则是其中的一个重要的类,如下图效果:

技术分享

代码也没有什么难度,直接贴出来吧

 @Override
    protected void onDraw(Canvas canvas) {
        canvas.drawColor(Color.WHITE);
        Paint paint = new Paint();
        paint.setAntiAlias(true);
        paint.setColor(0xFFFF6600);
        paint.setTextSize(26);
        paint.setStyle(Paint.Style.STROKE);

        //绘制围绕圆形文字
        Path path = new Path() ;
        //添加顺时针圆形路径
        path.addCircle(200,200,100, Path.Direction.CW);
        paint.setStyle(Paint.Style.FILL);
        canvas.drawTextOnPath("床前明月光,疑是地上霜。举头望明月,低头思故乡。",path,0,-18,paint);
    }

  绘制三角形,效果图如下:

技术分享

代码如下:

       canvas.drawColor(Color.WHITE);
        Paint paint = new Paint();
        paint.setAntiAlias(true);
        paint.setColor(0xFFFF6600);
        paint.setTextSize(26);
        paint.setStyle(Paint.Style.STROKE);

        //绘制三角形路径
        Path path = new Path();
        //设置曲线的起点
        path.moveTo(200, 300);
        //设置第一条边的结束点
        path.lineTo(100, 500);
        //设置第二条边的结束点
        path.lineTo(300, 500);
        //闭合路径
        path.close();
        paint.setColor(Color.RED);
        canvas.drawPath(path, paint);

  

绘制折线

技术分享

代码如下:

Path path = new Path();
        path.moveTo(200, 300);
        path.lineTo(250,200);
        path.lineTo(300,250);
        path.lineTo(350,400);
        path.lineTo(400,310);
        path.lineTo(500,100);
        canvas.drawPath(path, paint);

  

以上是关于Android -- 自定义View小Demo,关于Path类的使用的主要内容,如果未能解决你的问题,请参考以下文章

Android 自定义View:实现一个 FM 刻度尺

Android技术分享| 自定义View实现使用更方便的SeekBar

从Android绘制View小例子中深入理解自定义View

Android技术分享| 自习室自定义View代替通知动画

Android技术分享| 自习室自定义View代替通知动画

一手遮天 Android