2014-11-23 5 views
1

나는 냄비 제스처가 있으며 제스처 시작시기를 확인해야합니다. 목적-C에서는 작동 및overload gestureRecognizerShouldBegin UIPanGestureRecognizer with swift

재정을 반환하지 않습니다

- (BOOL)gestureRecognizerShouldBegin:(UIGestureRecognizer *)gestureRecognizer 

과 수는 UIPanGestureRecognizer

- (BOOL)gestureRecognizerShouldBegin:(UIPanGestureRecognizer *)gestureRecognizer 

으로하지만 빠른

override func gestureRecognizerShouldBegin(gestureRecognizer: UIPanGestureRecognizer) -> Bool { 

에 과부하하는 데 사용할 수있는 선택기가있는 메소드 'gestureRecognizerShouldBegin :'에 호환되지 않는 유형이 있습니다. '(UIPanGestureReco gnizer) -> Bool '

어떻게이 방법을 신속하게 오버로드 할 수 있습니까?

답변

0

오버라이드를 제거하고 UIGestureRecognizerDelegate 확장을 추가하는 것을 잊지 마십시오.

당신은 당신의 클래스의 맨 아래에 추가 할 수 있습니다 당신은 방법을 과부하 할 필요가 없습니다

class YourViewController: UIViewController { 
    // You class declaration 
} 

extension YourViewController: UIGestureRecognizerDelegate { 
    func gestureRecognizerShouldBegin(gestureRecognizer: UIGestureRecognizer) -> Bool { 
     // 
     return true 
    } 
} 
+0

당신은 정말 대답하지 않았다 질문 : '제스처에 과부하를 걸 때 PanGestures에 대한 인식기를 설치하는 방법' – Macistador

2

, 당신은 대신이 작업을 수행 할 수 있습니다

override func gestureRecognizerShouldBegin(gestureRecognizer: UIGestureRecognizer) -> Bool { 
    if let panGesture = gestureRecognizer as? UIPanGestureRecognizer { 
     return ... 
    } 
    else { 
     return ... 
    } 
}