zoukankan      html  css  js  c++  java
  • 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);
    

      

  • 相关阅读:
    log4j日志基本配置
    MyBatis基本应用
    Java properties配置文件
    Java DAO模式
    Java方式 MySQL数据库连接
    bug 复制代码没有审查,没有完全就该变量名
    cocos3 深入理解tiledmap
    cocos3 深入理解单例模式
    cocos3 CC_BREAK_IF(m_pGameMap==NULL);
    cocos2d3 宏定义屏幕宽高,这样就不用重复获取了
  • 原文地址:https://www.cnblogs.com/wjtaigwh/p/5946262.html
Copyright © 2011-2022 走看看