ICode9

精准搜索请尝试: 精确搜索
首页 > 其他分享> 文章详细

drawRoundRect方法:绘制圆角矩形

2021-07-27 19:31:44  阅读:346  来源: 互联网

标签:圆角 r1 r2 drawRoundRect paint 矩形 绘制


 

 

 

【功能说明】该方法用于在画布上绘制圆角矩形,通过指定RectF对象以及圆角半径来实现。该方法是绘制圆角矩形的主要方法,同时也可以通过设置画笔的空心效果来绘制空心的圆角矩形。

【基本语法】public void drawRoundRect (RectF rect, float rx, float ry, Paint paint)

参数说明

rect:RectF对象。

rx:x方向上的圆角半径。

ry:y方向上的圆角半径。

paint:绘制时所使用的画笔。

【实例演示】下面通过代码来演示如何在画布上绘制圆角矩形。

  1. protected void onDraw(Canvas canvas) {  
  2.     // TODO Auto-generated method stub  
  3.     super.onDraw(canvas);  
  4.     paint.setAntiAlias(true);                       //设置画笔为无锯齿  
  5.     paint.setColor(Color.BLACK);                    //设置画笔颜色  
  6.     canvas.drawColor(Color.WHITE);                  //白色背景  
  7.     paint.setStrokeWidth((float) 3.0);              //线宽  
  8.     paint.setStyle(Style.STROKE);                   //空心效果  
  9.     Rect r1=new Rect();                         //Rect对象  
  10.     r1.left=50;                                 //左边  
  11.     r1.top=50;                                  //上边  
  12.     r1.right=450;                                   //右边  
  13.     r1.bottom=250;                              //下边  
  14.     canvas.drawRect(r1, paint);                 //绘制矩形  
  15.     RectF r2=new RectF();                           //RectF对象  
  16.     r2.left=50;                                 //左边  
  17.     r2.top=400;                                 //上边  
  18.     r2.right=450;                                   //右边  
  19.     r2.bottom=600;                              //下边  
  20.     canvas.drawRoundRect(r2, 10, 10, paint);        //绘制圆角矩形  
  21. }  

在这段代码中,首先设置了Paint画笔的颜色,并设置Canvas画布为白色背景。接着设置画笔的线宽以及空心效果,这样将绘制出空心矩 形。最后,调用drawRect方法在画布上绘制了一个矩形,调用drawRoundRect方法在画布上绘制了一个圆角矩形。读者运行这段代码,可以在 手机屏幕上看到如图8.18所示的显示效果。

 
图8.17  绘制矩形
 
图8.18  绘制圆角矩形

 

 

https://www.cnblogs.com/jackwuyongxing/p/3985863.html

标签:圆角,r1,r2,drawRoundRect,paint,矩形,绘制
来源: https://www.cnblogs.com/pengmn/p/15067533.html

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有