1. 程式人生 > >drawRoundRect方法:繪製圓角矩形

drawRoundRect方法:繪製圓角矩形

轉自:http://book.51cto.com/art/201204/328272.htm

【功能說明】該方法用於在畫布上繪製圓角矩形,通過指定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  繪製圓角矩形