2

我在这里搜索了很多关于使用画布在位图上绘制圆圈的答案。但是,我在代码中遇到了一些错误,应用程序毫无例外地停止了。

谁能给我一些帮助?它适用于我创建一个空白位图并在其上画一个圆圈。任何帮助将不胜感激!

Bitmap bmp = BitmapFactory.decodeResource(getResources(), R.drawable.main);

Paint paint = new Paint();
//paint.setAntiAlias(true);
paint.setColor(Color.BLUE);

Canvas canvas = new Canvas(bmp);
canvas.drawCircle(50, 50, 10, paint);

ImageView imageView = (ImageView)findViewById(R.id.imageView1);
//imageView.setAdjustViewBounds(true);
imageView.setImageBitmap(bmp);
4

2 回答 2

4

在某处阅读资源位图是不可变的。尝试...

bmp = bmp.copy(bmp.getConfig(), true);
于 2013-03-07T14:28:13.573 回答
0

这将为给定高度为您绘制一个圆圈

 private RectF outerCircle;
    diameter =400;

   int left = (width - diameter) / 2;
   int top = (height - diameter) / 2;
   int bottom = top + diameter;
   int right = left + diameter;
    outerCircle = new RectF(left, top, right, bottom);
于 2013-03-07T14:22:12.447 回答