2013-06-12 2 views
0

가로 스크롤 뷰에 세로 스 와이프를 추가했습니다. 그 비트 잘 작동하지만 위 또는 아래로 스 와이프 동작을 나타내는 나타내는 suer 접촉 할 때 scrollview 위 및 아래 목표를 밝히고 싶습니다.uiscrollview에서 tosucesbegan을 감지했습니다.

어떻게하면됩니까?

손가락을 들었을 때만 터지하기 때문에 탭 검출기를 사용하면 절단되지 않습니다.

짧은 발사 지연 시간을 가진 긴 압력 감지기를 사용하면 다른 제스처 인식기를 모두 비활성화하는 것처럼 보이기 때문에 작동하지 않습니다.

답변

0

GRR ... 왜 이런 일이 항상 일어나지 않습니다 - 당신이 포기 직후, 답이 온다!

그렇습니다. 긴 압력 검출기는 제스처의 시작과 끝을 감지하는 방법이지만 적절한 객체에 UIGestureRecognizerDelegate 프로토콜을 구현하고 모든 제스처 인식기에 대한 위임자로 설정해야합니다. :

- (BOOL)gestureRecognizer:(UIGestureRecognizer *)gestureRecognizer shouldRecognizeSimultaneouslyWithGestureRecognizer:(UIGestureRecognizer *)otherGestureRecognizer { 
    return YES; 
} 

이렇게하면 장주기 탐지기가 다른 모든 제스처 인식기를 무시하지 못하게합니다.

1

당신은있는 UIScrollView를 서브 클래스 화해,이 메소드를 오버라이드 (override) 할 수 있습니다

-(void)touchesBegan:(NSSet *)touches withEvent:(UIEvent *)event; 
-(void)touchesMoved:(NSSet *)touches withEvent:(UIEvent *)event; 
-(void)touchesEnded:(NSSet *)touches withEvent:(UIEvent *)event; 
+0

좋은 답변이지만, 생각보다 조금 덜한 작품을 발견했습니다 ... 아래를 참조하십시오. –

관련 문제