在android中更改图像的绘图形状

时间:2011-06-17 12:18:49

标签: android user-interface

我需要在布局中的图像上绘制形状。此图像需要能够以编程方式更改为另一个图像,并且还需要以编程方式在该图像的顶部绘制形状(矩形和圆形)。形状也会改变。我有一个现有的xml布局,并希望将此布局与其中的编程图像视图一起使用。最简单的方法是什么?是否有可能看到一个简短的例子?

1 个答案:

答案 0 :(得分:0)

我想出了如何做到这一点:

以下是:

ImageView image = (ImageView) findViewById(R.id.mainImageView);
Bitmap bMap = BitmapFactory.decodeFile(imageFileString);

bMap = bMap.copy(Bitmap.Config.ARGB_8888 , true);

Canvas canvas = new Canvas(bMap);
Paint paint = new Paint();
paint.setAntiAlias(true);
paint.setStyle(Paint.Style.STROKE);
paint.setStrokeWidth(1);  
paint.setColor(Color.BLUE);
canvas.drawCircle(x, y, radius, paint);

image.setImageBitmap(bMap);

说明:第一行从布局中获取ImageView。然后我使用BitmapFactory.decodeFile抓取我想要显示的新图像,其中imageFileString是我想要显示的新图像的文件位置。之后,我使用位图创建一个新的画布并在其上绘制。然后,我使用ImageView将位图显示到image.setImageBitmap(bMap);