2013-01-11 33 views
0

我想繪製一個UIImageView,我使用touchesMoved和touchesBegan爲此,它的工作原理。移動,縮放和繪製在同一個UIImageView

我使用縮放識別器進行縮放,它也可以。

但我該如何移動它?因爲如果我使用泛識別器,它將與touchesMoved發生衝突。

我該如何做,所以只有在用戶使用3個手指時才能調用平底鍋識別器?

我認爲別人已經面臨這個問題。

感謝

回答

1

使用touchesMoved有兩個觸摸和用戶可以用兩個手指圖像幻燈片只是1手指將提請......除了它從來沒有使用3個手指一個好主意,因爲在任何地方任何人誰擁有三重在其設備中啓用的點擊縮放功能將無法使用3指功能。 (我和我的很多朋友都啓用此功能)

首先確認兩個觸摸都在UIImageView的 然後從兩個觸摸拍攝X & y值,並取它們的平均值以獲得在兩者之間的中點你的手指。使用此值進行平移。 查找當前平均中點與先前平均中點之間的變化,並將此更改應用於圖像中心。

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

+0

是的,它的作品謝謝!但如果我添加一個pinchGestureRecognizer,touchesMoved也會被調用:(如何避免這種情況? –

+0

擺脫touchesMoved並將其替換爲swipeGesture識別器...現在,您可以執行單次刷卡和雙擊刷屏...蘋果的API將區分捏/拉和2指滑動 –

+0

否則,你將不得不做的數學計算,你將無法使用捏你必須使自己的pinchGesture –