我有一個UIScrollView內的圖像,我有代碼,當用戶拖動他們的手指時繪製文本。我希望能控制,當用戶觸摸屏幕時,如果UIScrollView觸摸和傾聽事件
一)用戶應該使用他們的手指畫或
b)使用者應圍繞移動滾動視圖用他們的手指
我有一個布爾值來跟蹤用戶正在做什麼。我碰觸過的方法有:
-(void)touchesBegan:(NSSet *)touches withEvent:(UIEvent *)event
{
UITouch *mytouch=[[touches allObjects] objectAtIndex:0];
if(draw == false) {
printf("calling super");
[scrollView touchesBegan:touches withEvent:event];
}
else
[myPath moveToPoint:[mytouch locationInView:self]];
}
-(void)touchesMoved:(NSSet *)touches withEvent:(UIEvent *)event
{
UITouch *mytouch=[[touches allObjects] objectAtIndex:0];
if(draw == false)
[scrollView touchesMoved:touches withEvent:event];
else {
[myPath addLineToPoint:[mytouch locationInView:self]];
[self setNeedsDisplay];
}
爲什麼不能正常工作?基本上,如果我不繪製,我會調用touchesBegan和touchesMoved滾動視圖。如果我正在繪圖,我使用myPath繪圖。
但是,當draw爲false時,滾動視圖不會移動或放大等等,因爲它應該是這樣。
,它似乎仍然可以滾動使用兩個手指來完成。 – CodeGuy 2012-07-27 19:36:27
這讓我很驚訝。您是否也需要禁用縮放功能(通過設置maximumZoomScale = minimumZoomScale?也可以直接禁用其「panGestureRecognizer」)。 – 2012-07-27 19:46:13