用drawRoundRect怎么画圆

来源:百度知道 编辑:UC知道 时间:2024/06/05 17:58:08
g.drawRoundRect(20,20,240,240,120,120);
这样画出来的为什么不是圆?不然该怎么写呢?谢谢
圆角矩形方法drawRoundRect(int x,int y,int width,int height,int arcWidth,int arcHeight)
arcWidth为圆角的弧宽,arcHeight为圆角的弧高,都为正方形长度的一半了,怎么还不是圆呢.题目要求用drawRoundRect方法做啊

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;