0
我需要在布局中的图像上绘制形状。此图像需要能够以编程方式更改为其他图像,并且还需要以编程方式在此图像上方绘制形状(矩形和圆形)。形状也会改变。我有一个现有的XML布局,并希望使用此布局与编程的图像视图。最简单的方法是什么?有可能看到一个简短的例子吗?在android中更改图像的绘制形状
我需要在布局中的图像上绘制形状。此图像需要能够以编程方式更改为其他图像,并且还需要以编程方式在此图像上方绘制形状(矩形和圆形)。形状也会改变。我有一个现有的XML布局,并希望使用此布局与编程的图像视图。最简单的方法是什么?有可能看到一个简短的例子吗?在android中更改图像的绘制形状
我想通了,如何做到这一点:
方法如下:
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
是我要显示的新图像的文件位置。之后,我使用位图创建一个新的画布并绘制它。然后我使用image.setImageBitmap(bMap);
将位图显示到ImageView
。