2011-07-11 136 views
1

我制作了一个自定义ImageView,它具有一个在特定像素上绘制圆的onDraw方法。问题是我使用ImageView来加载位图图像,并且我需要画布与位图图像和ImageView持有人的尺寸相同,才能再次获得相同尺寸..将画布大小设置为相同大小的位图图像

没有人知道如何实现此目的?

回答

1
final SurfaceHolder holder = getSurfaceHolder(); 
Canvas c = new Canvas(); 
c = holder.lockCanvas(); 
c.save(); 
c.drawBitmap(yourBitmap,0,0,null); 
c.restore(); 
holder.unlockCanvasAndPost(c); 

这是我的理解,你不需要担心画布的大小。

+0

我的自定义视图类(具有onDraw方法)当前扩展ImageView。我需要扩展SurfaceHolder吗?另外我该如何实现滚动和缩放呢? – cptham

+0

我通常使用SurfaceViews而不是ImageViews来处理这种类型的事情。虽然我不确定任何性能比较。 –

0

不会确定onMeasure()中的位图大小并相应地设置自定义视图大小吗?