마커에서 길게 누르는 제스처를 인식하도록하려는 Google지도가 있습니다. 그 동안 긴 언론의 제스처에 대응하기 위해 매핑하고 싶습니다. 나는 올바르게 구현하는 단계를 따라 왔지만 오래 언론으로부터 반응을 얻지 못했고, 필자는 왜 시뮬레이터에서 긴 클릭으로 인식하지 못하기 때문에 테스트를하고있는 것일까? 어쨌든 여기 아래에 사용 된 방법이 있습니다. 만약 내가 놓친 것이 있다면 누구나 볼 수 있다면 알려주세요.오브젝트 라이브러리에서 긴 프레스 동작 구현 응답 없음 3
1.) 객체 라이브러리에서 긴 탭 제스처 인식기를 메인 스토리 보드의 내지도보기로 드래그했습니다.
3.
)이 0.5 초에 최소 기간을 설정 내 참조 콘센트 연결에>지도보기과 14 모두 터치와 탭 인식기를 활성화 -
2)이이 gestureRecognizers를 넣어 .)에 입력 한 내지도보기를 포함하는의 ViewController에서 :
@IBAction func handleLongtap(recognizer: UILongPressGestureRecognizer) {
print("PRESSED")
}
5) 다시 메인 스토리 보드 뷰 컨트롤러로 제어 드래그 길게 누름 제스처 인식기를하고 선택 "handleLongtap"에 'handleLongTap을 넣어 - -> longPressGesture "i nto my view controller '받은 동작들'
시뮬레이터를 오랫동안 클릭 할 때 오류가 없습니다. 터미널에 "PRESSED"가 표시되지 않습니다. 어떤 생각이 잘못 되었습니까?
let longPress = UILongPressGestureRecognizer()
longPress.addTarget(self, action: ViewController.handleTap)
yourPin.addGestureRecognizer(longPress)
func handleTap() {
print("Tapped")
}
을 그리고 당신이 필요로 그냥 조정할 :
실제로 처음에는 viewDidLoad의 첫 번째 부분을 넣은 다음 기능을 사용했지만 아무 일도 일어나지 않았기 때문에 성공하지 못했습니다. 그리고 왜 다시 한 번 오류가 없었는지 확실하지 않습니다. –
난 그냥 다시 확인을 위해 위의 코드를 다시 시도하고있다 (하지만 대신 mapView 어디서나 응답을 yourPin 넣고 있어요)하지만 오류가 발생 해요 ViewController 인스턴스 멤버 'handleTap'- 어떻게 정의 할 것이라고 그것? –
View Controller의 이름으로 ViewController.handleTap에서 ViewController를 변경하십시오. – bkwebhero