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

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

参数说明

rect:RectF对象。

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

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

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

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

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

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

drawRoundRect方法:绘制圆角矩形-冯金伟博客园 
图8.17  绘制矩形
drawRoundRect方法:绘制圆角矩形-冯金伟博客园 
图8.18  绘制圆角矩形

【责任编辑:book TEL:(010)68476606】