swipe 제스처 인식기를 swift를 사용하여 컬렉션보기에 추가하려고합니다. 사용자가 오른쪽 또는 왼쪽으로 스 와이프 할 때마다 컬렉션보기를 다시로드해야합니다. 그러나 시뮬레이터의 컬렉션보기에서 오른쪽 또는 왼쪽으로 스 와이프하면 오류가 발생하고 AppDelegate.swift 클래스가 자동으로 열립니다. 이 오류는 말한다 "의 libC++ abi.dylib : 형 NSException의 캐치되지 않는 예외로 종료"를 collectionViewController 클래스왜 스 와이프 제스처 인식기가 신속하게 오류를 발생 시키나요?
collectionView.userInteractionEnabled = true
collectionView.delegate = self
var left = UISwipeGestureRecognizer(target: collectionView, action: "swipping:")
left.direction = UISwipeGestureRecognizerDirection.Left
collectionView.addGestureRecognizer(left)
var right = UISwipeGestureRecognizer(target: collectionView, action: "swipping:")
right.direction = UISwipeGestureRecognizerDirection.Right
collectionView.addGestureRecognizer(right)
이의
내가있는 viewDidLoad (이 부분을 작성하는)을 swipping 기능입니다 :
func swipping (gesture : UIGestureRecognizer){
if let swipeGesture = gesture as? UISwipeGestureRecognizer {
switch swipeGesture.direction {
case UISwipeGestureRecognizerDirection.Left:
collectionView.reloadData()
pageControl.currentPage++
case UISwipeGestureRecognizerDirection.Right:
collectionView.reloadData()
pageControl.currentPage--
default:
break
}
}
}
추가 UIGestureRecognizerDelegate CollectionViewController 클래스와 AppDelegate에 클래스. 어떻게해야합니까?
감사합니다.
, 나는 그것을 변경되었습니다. 이제는 왼쪽이나 오른쪽으로 스 와이프 할 때 인식하지 못합니다. 오류가 발생하지 않지만 다시 작동하지 않습니다. – simge
확장 답변을 참조하십시오. – Greg
내가 말한 것처럼 scrollViewDidScroll 함수를 작성합니다. 그러나 결코 호출되지 않습니다. scrollViewDidScroll 메서드에서 무언가를 인쇄하여 실행하고 스크롤하려고 할 때 콘솔에 아무것도 인쇄하지 못했습니다. – simge