0

, 나는이 UITapGestureRecognizer을 구현하는 단계를 따라했습니다> 등록하지만, 그것은 "단일 탭을"등록되지 않습니다 :UITapGestureRecognizer 만 1 개 탭 내 <code>viewDidLoad</code> FUNC에서

let gestureRecognizer = UITapGestureRecognizer(target: self, action: #selector(tapAction)) 
gestureRecognizer.numberOfTapsRequired = 3 
myView.addGestureRecognizer(gestureRecognizer) 

내가 가진 계층 구조의 상위 뷰에 다른 뷰를 적용하려고했지만 동일한 문제가 여전히 남아 있습니다. 3 번 탭이 필요하면 3 번 눌러야 작동합니다. (즉, 처음 탭을 다른보기로 가져간 것을 배제했습니다.)

왜 내가 단 하나의 탭을 등록 할 수없는 이유가 있습니까?

감사합니다!

+0

다른 뷰나 부모에게 연결된 다른 UITapGestureRecognizer가 있습니까? 얼마나 많은 도청 장치가 설치되어 있습니까? –

+0

@AlecGorge 아니요, 아닙니다. 바로 그거야. 나는 2와 3 도청을 위해 그것을 설정했다. 그것은 모두 작동한다. = 1로 설정하면 어떤 이유로 등록되지 않습니다 ... 어떤보기에도 불구하고 그것을 적용했습니다 ... – PlateReverb

+1

'numberOfTapsRequired'를 설정 한 전체 행을 제거하면 작동합니까? 나는 기본값이 1이기 때문에 차이가 있다는 것을 상상할 수는 없지만, 한 번의 탭을 찾을 때마다 아무 것도 설정하지 않습니다. –

답변

0

좋아요 ... 그럼 내 문제에 대한 해결책은 간단했습니다. 나는 "탭"데이터를 수집하려고했던 영역의 최상위 레이어에 투명 뷰를 추가해야했습니다. 여러 버튼 객체가있는 영역에서 좌표 데이터를 수집하는 데 "수퍼 뷰"가 필요하다는 것을 읽었습니다. 모든 버튼을 포함하는 뷰를 의미한다고 가정했지만 올바르지 않습니다. superview는 좌표 데이터를 수집하려는 모든 객체의 "앞에"있어야하며 이제는 단일 탭이 작동합니다!