swift 点击响应视图之外的地方

 

 

需求:点击红框 才 隐藏view,

现象,在touch Began 里面写的时候, 红色和蓝色框都会消失

    /// 点击containerView 之外的地方隐藏
    override func touchesBegan(_ touches: Set<UITouch>, with event: UIEvent?) {
        
        super.touchesBegan(touches, with: event)
        if let touch = touches.first{
            let location = touch.location(in: self)
            let convertPoint = self.convert(location, to: containerView)
            if !containerView.bounds.contains(convertPoint){
                hiddendShareView()
            }
        }
    }


    /// 点击隐藏当前界面
    private func hiddendShareView() {
        UIView.animate(withDuration: 0.25, animations: {
            self.alpha = 0
            self.layoutIfNeeded()
        }) { (res) in
            self.removeFromSuperview()
        }
    }

  

转载于:https://www.cnblogs.com/qingzZ/p/11075981.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值