在Android中通过ImageView绘制图层
问题描述:
任何人都可以引导我如何在显示在ImageView组件上的图像上放置不同的图层。 基本上我想在我的绘图应用程序中实现撤消和重做功能。在Android中通过ImageView绘制图层
目前我可以把文字或图画放在图像上,但不能实现撤销/重做功能。我想知道这可以通过维护一些分层的东西来实现。
Plz帮助我。
这是事先我当前的绘图代码..
try {
image.buildDrawingCache();
Bitmap bitmap = image.getDrawingCache();
try
{
bitmap = getResizedBitmap(bitmap, image.getHeight(),
image.getWidth());
} catch (OutOfMemoryError e) {
Toast.makeText(getApplicationContext(), e.getMessage(), 1)
.show();
}
TextPaint tp = new TextPaint();
tp.setColor(Color.GREEN);
tp.setAntiAlias(true);
tp.setTextSize(30);
Canvas canvas = new Canvas(bitmap);
canvas.drawText(input.getText().toString(), xPos, yPos, tp);
image.setImageBitmap(bitmap);
input.setText("");
input.setVisibility(View.INVISIBLE);
} catch (Exception e) {
Toast.makeText(getApplicationContext(), e.getMessage(), 1).show();
}
感谢...!
答
以另一种方式完成它。 创建orignal位图并将其保存在一些位图变量中。现在,在每个onDraw调用中启动一个带有orignal的位图并将其传递给画布。然后做你想做的事情。
答
尝试LayerDrawable于Android
你能分享这个示例代码吗? – HourGlass
现在已经过时了,我会寻找代码,如果发现,它会帮助你。 –
非常感谢... – HourGlass