2
所有,我扩展了ImageView以实现图像上的缩放缩放比例。这是通过修改矩阵并将其应用于图像来完成的。现在,我也覆盖了onDraw()来绘制基元(即矩形和圆形)。我已将该矩阵应用于画布,并且似乎已正确处理缩放,但唯一的问题是该位置在绘制的项目上不起作用。我如何着手翻译绘制项目的位置以反映新的比例?Android:缩放ImageView和它的onDraw()项目
所有,我扩展了ImageView以实现图像上的缩放缩放比例。这是通过修改矩阵并将其应用于图像来完成的。现在,我也覆盖了onDraw()来绘制基元(即矩形和圆形)。我已将该矩阵应用于画布,并且似乎已正确处理缩放,但唯一的问题是该位置在绘制的项目上不起作用。我如何着手翻译绘制项目的位置以反映新的比例?Android:缩放ImageView和它的onDraw()项目
有没有矩阵的aproach,你可以实现捏和缩放直接在onDraw方法。检查此博客文章:http://android-developers.blogspot.com/2010/06/making-sense-of-multitouch.html
@Override
public void onDraw(Canvas canvas) {
super.onDraw(canvas);
canvas.save();
canvas.translate(mPosX, mPosY);
mIcon.draw(canvas);
canvas.restore();
}
谢谢,实际上运行良好。但是,一旦完成了翻译和/或缩放,我的触摸代码就可以捕捉到原语的触摸了。有没有办法将onTouch(MotionEvent)的值转换为与当前画布上的on相匹配? – serveace6
你必须计算翻译后对象的位置。 – ovonel
我能够通过减去触摸事件位置的偏移量来转换位置,但是可以将任何有关因子分解的想法? – serveace6