8.2.8 drawRoundRect方法:繪制圓角矩形
【功能說明】該方法用於在畫布上繪制圓角矩形,通過指定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所示的顯示效果。
![]() |
圖8.17 繪制矩形 |
![]() |
圖8.18 繪制圓角矩形 |