내 탭이 뷰 내부에 있는지 또는 뷰 외부에 있는지 확인하기 위해 코드 부분을 개발하려고합니다. pointInside 메소드로 시도했습니다. A가 기본보기 컨트롤러이고 B가 A의 하위보기 인 경우 B 내부에서 탭 한 사용자를 알 수있는 방법은 무엇입니까?탭이 신속하게보기 또는 바깥에 있는지 여부
2
A
답변
4
애플은 Responder Chain에서 매우 잘 설명합니다. 보기 컨트롤러에 다음 함수를 추가 할 수 있습니다.
override func touchesEnded(_ touches: Set<UITouch>, with event: UIEvent?) {
if let firstTouch = touches.first {
let hitView = self.view.hitTest(firstTouch.location(in: self.view), with: event)
if hitView === viewB {
print("touch is inside")
} else {
print("touch is outside")
}
}
}
3
tapGestureRecognizer
콜백에서 tapGesture.location(in: A)
콜백에서 x 위치와 y 위치를 가져올 수 있습니다. 추천 시스템. 그런 다음 B.frame.contains(location)
을 사용할 수 있습니다.
true의 경우, 다음 탭이 문제에 간단한 방법이있다 수행하려는 작업에 따라 B.
입니다. 예를 들어 B 내부에 닿기 만하면 A 대신 B에 gestureRecognizer
을 추가 할 수 있습니다.
어떤 것이 정확히 필요한지 잘 모르겠습니다. 더 많은 정보를 통해 당신에게 더 나은 조언을 줄 수 있습니다.
관련 문제
- 1. 포인트가 곡선 바깥에 있는지 확인하십시오.
- 2. 값이 범위에 있는지 여부
- 3. 분류 여부 표시 스레드가 있는지 여부
- 4. dll이 있는지 여부 확인
- 5. DST에 있는지 여부 - IsInDaylightSavings()
- 6. TabControl에 탭이 있는지 확인하십시오. C#
- 7. 오브젝트 생성이 힙에 있는지 여부 ..
- 8. Java에 문자열이 들어 있는지 여부
- 9. Firefox API가 탭이 활성화되어 있는지 확인합니다.
- 10. 확인이 있는지 여부 언어 나는이 두 언어가
- 11. 오차드 CMS. 탐색 패널이 열려 있는지 여부
- 12. 신속하게보기 컨트롤러에서 메모리를 해제 할 수있는 방법
- 13. Alljoyn을 공장 환경에서 사용할 수 있는지 여부
- 14. CPU의 수가 프로세스의 성능에 달려 있는지 여부
- 15. 브라우저 탭이 활성화되어 있는지 확인 하시겠습니까? - IE?
- 16. Qt에서 어떤 탭이 선택되어 있는지 알고 싶습니다.
- 17. 탭이 활성화되어 있는지 검색 하시겠습니까? (다른 초점)
- 18. 특정 제목의 브라우저 탭이 이미 있는지 확인하십시오.
- 19. vim에서 현재 탭이 비어 있는지 확인하십시오.
- 20. 앵커로 열린 창/탭이 닫혀 있는지 확인하십시오.
- 21. WPF : TabControl에 탭이 하나만 있는지 확인합니다!
- 22. 이미지를 바깥에 표시하는 방법
- 23. 기기에 터치 스크린이 있는지 여부 확인
- 24. 사용자가 아직 사이트에 있는지 여부 표시
- 25. 사용자가 프록시를 사용하고 있는지 여부 확인하기
- 26. 데이터 구조에서 모든 비트가 꺼져 있는지 여부?
- 27. 세션이 만료되면 viewstate가 남아 있는지 여부?
- 28. CCRC에서 뷰의 이름을 바꿀 수 있는지 여부
- 29. StorageFile에 데이터가 포함되어 있는지 여부 (휴대 전화)
- 30. ui-slider를 확인하는 방법이 비활성화되어 있는지 여부
'with'매개 변수에 대한 호출이 누락되었습니다. 나는 그것을 얻지 않았다. – Joe
감사합니다. 그것은 나를 위해 일했습니다 .... – Aayushi
일부 대리인을 설정해야합니까? 이후 해고되지 않습니다. –