2011-09-13 6 views
1

하위 뷰로 UIView가있는 viewController가 있습니다. 사용자가 ViewController에서 UIView를 클릭 한 경우에만 어떻게 표시할지 궁금합니다.UIView 터치 감지

이것이 가능합니까? 감사합니다.

답변

1

체크 아웃 UITapGestureRecognizer 문서 : (당신의 탭을 처리하는 선택기를 통과하는) 조치 :

http://developer.apple.com/library/ios/#documentation/uikit/reference/UITapGestureRecognizer_Class/Reference/Reference.html

당신은 initWithTarget를 사용하여, 당신의 UIViewController에 UITapGestureRecognizer를 인스턴스화 할 수 있습니다. 그런 다음 addGestureRecognizer 메소드를 통해 UIGestureRecognizer를 UIView에 추가하십시오.

+0

를 사용하여 동시에 두 개의 제스처 인식기를 사용할 수 있지만이 탭을 포함하는 것이, 사용자가 누르는 것입니다 경우 다음 손가락을 드래그 UIView 내부에서, 나는'touchesBegan :'을 사용하여 생각하고 있었지만, 그 방법을 모른다. –

+0

흠, 나는 질문을 오해 한 것 같아서, 당신은 단지 도청에 대해서 알고 싶다고 생각했다. 다른 사용자 행동을 포착하려는 경우 선택할 수있는 제스처 인식기가 많이 있습니다. 기존 GestureRecognizer 하위 클래스에서 다루지 않는 동작을 캡처하려는 경우에만 touchesBegan을 사용합니다. – evanflash

1

touchesBegan, touchesMoved 및 touchesEnded 메서드를 사용할 수 있습니다. 응용 프로그램에 따라 Cancelled 터치 만 사용할 수도 있습니다.

이러한 작업이 없으면 UIGestureRecognizers - UIPanGestureRecognizer 및 UITapGestureRecognizer를 사용할 수 있습니다.

가 도움이 될 수 있습니다 그냥 경우에, 당신은 또한 방법

- (BOOL)gestureRecognizer:(UIGestureRecognizer *)gestureRecognizer shouldRecognizeSimultaneouslyWithGestureRecognizer:(UIGestureRecognizer *)otherGestureRecognizer