ios swift 父视图添加UIPanGestureRecognizer 子视图UIButton被点击时,父视图会自己移动

解决方法:把被点击button的布局由snapkit改为frame就可以了

        lightBtn.frame = CGRect(x: 0, y: 0, width: 50, height: 50)
//        lightBtn.snp.makeConstraints { make in
//            make.top.equalToSuperview()
//            make.height.width.equalTo(50)
//        }

问题

        let panGesture = UIPanGestureRecognizer(target: self, action: #selector(leftViewPan(gesture:)))
        panGesture.delegate = self
        leftView.addGestureRecognizer(panGesture)
extension NewDeviceVC: UIGestureRecognizerDelegate {
    
    

    func gestureRecognizer(_ gestureRecognizer: UIGestureRecognizer, shouldReceive touch: UITouch) -> Bool {
    
    

        if touch.view is UIButton {
    
    
            return false
        }
        return true
    }
}

参考博客:
iOS点击事件和手势冲突

猜你喜欢

转载自blog.csdn.net/baidu_40537062/article/details/129330052