长按手势

 


Swift

        // 长按手势
        let longPressGesture = UILongPressGestureRecognizer(target: self, action: "<#methodName#>:");
        
        // 长按多久触发
        longPressGesture.minimumPressDuration = 0.25;
     
        // 给谁添加手势
        view .addGestureRecognizer(longPressGesture);

    // MARK:
    // MARK: 长按手势事件
    /// 长按手势事件
    @objc private func <#methodName#>(sender: UILongPressGestureRecognizer) {
        
        switch sender.state {
            
            // 手势开始了
        case .Began:
            
            burstTimer = NSTimer.scheduledTimerWithTimeInterval(0.2, target: self, selector: "<#otherMethodName#>", userInfo: nil, repeats: true);
            
            print("开始");
        
        // 手势结束了
        case .Ended:
            
            // 废除计时器
            burstTimer?.invalidate();
     
            print("结束");
            
            break;
            
        default:
            
            break;
        }
        
    }

OC

    // 长按手势
    UILongPressGestureRecognizer *longPressGesture =
    [[UILongPressGestureRecognizer alloc]
     initWithTarget:self
     action:@selector(<#methodName#>:)];
    
    // 长按多久触发
    longPressGesture.minimumPressDuration = 0.2;
    
    // 给谁添加手势
    [self.view addGestureRecognizer:longPressGesture];

- (void)<#methodName#>:(UILongPressGestureRecognizer *)sender {
    
   
    switch (sender.state) {
            
            // 手势开始了
        case UIGestureRecognizerStateBegan:
            
            // 计时器
            _burstTimer = [NSTimer scheduledTimerWithTimeInterval:0.2
                                                           target:self
                                                         selector:@selector(<#otherMethodName#>)
                                                         userInfo:nil
                                                          repeats:true];
            
            break;
            
            // 手势结束了
        case UIGestureRecognizerStateEnded:
            
            // 废除计时器
            [_burstTimer invalidate];
            
            // 释放
            _burstTimer = nil;
            
            break;
            
        default:
            break;
    }
}

 

转载于:https://my.oschina.net/codeismygirl/blog/682147

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值