0

我想在 UIImageView 上绘图,为此我使用 touchesMoved 和 touchesBegan,它可以工作。

我使用捏识别器进行缩放,它也可以。

但我怎样才能移动它?因为如果我使用平移识别器,它将与 touchesMoved 冲突。

我该怎么做才能仅在用户使用 3 个手指时调用平移识别器?

我认为其他人已经面临这个问题。

谢谢

4

1 回答 1

1

使用 touchesMoved 进行两次触摸,用户可以用两根手指滑动图像,但只需一根手指即可绘制……此外,在任何地方使用 3 根手指都不是一个好主意,因为任何人在他们的设备中启用了三次点击缩放辅助功能将无法使用三指功能。(我和我的很多朋友都启用了此功能)

首先验证两个触摸都在 UIImageView 上,然后从两个触摸中获取 x&y 值并对它们进行平均以获得手指之间的中点。使用此值进行平移。找出当前平均中点与先前平均中点之间的变化,并将此变化应用于图像中心。

image.center = CGPointMake(image.center.x+changeInX, image.center.y+changeInY);

于 2013-01-11T15:20:15.690 回答