일반 UIView의 경우 UIView Extension 게시물 이용하면 되지만 웹뷰의 경우 별도로 제스쳐 처리를 해줘야됨.

이유는 모르겠음. ㅜㅜ 아시는분 댓글좀 부탁드려요.

 

// MARK: UIGestureRecognizerDelegate
extension MainViewController: UIGestureRecognizerDelegate {
    
    @objc func tapGestureAction(sender: UITapGestureRecognizer) {
        if sender.state == .ended {
            log(direction: .ETC, ofType: self, datas: "EffectWebViewChildContainerVC tapGestureAction")
            
            tabGestureReceiverClosure?()
            
        }
    }
    
    // 해당 함수가 없으면 동작안함... 매우 중요 *****
    func gestureRecognizer(_ gestureRecognizer: UIGestureRecognizer, shouldRecognizeSimultaneouslyWith otherGestureRecognizer: UIGestureRecognizer) -> Bool {
      return true
    }
}

class MainViewController: UIViewController {

    @IBOutlet weak var webView: IWKWebView!
    var tabGestureReceiverClosure: (() -> Void)?
    
    override func viewDidLoad() {
        super.viewDidLoad()
        
        let chatTapped = UITapGestureRecognizer(target: self, action: #selector(tapGestureAction))
        chatTapped.numberOfTapsRequired = 1
        chatTapped.delegate = self
        self.webView.isUserInteractionEnabled = true
        self.webView.addGestureRecognizer(chatTapped)
    }
    
}

+ Recent posts