UILongPressGestureRecognizer长按手势

- (void)viewDidLoad

{

             //长按
            //创建长按的手势

            UILongPressGestureRecognizer *press = [[UILongPressGestureRecognizer alloc]initWithTarget:self action:@selector(longPressAction:)];

            //设置长按的时间

            press.minimumPressDuration = 0.5;//2秒(默认0.5秒)

            //设置长按的手指数
            [press setNumberOfTouchesRequired:1];
            

            //把手势加到界面上,可以加到任何控件上,需要开启用户交互

            //    _lable.userInteractionEnabled = YES;

            //   [self.view addGestureRecognizer:press];

            [cell addGestureRecognizer:press];

}

//长按后触发该方法

给tableview或者collectionView的cell添加长按手势执行两次(UILongPressGestureRecognizer)开始一次结束一次


-(void)longPressAction:(UILongPressGestureRecognizer*)longPress

{

   if ([longPress state] ==UIGestureRecognizerStateBegan) {

       

      //长按事件开始"

      // 可以获取我们在哪个cell上长按 tableview collectionView

      CGPoint point = [longPress locationInView:_collectionView];

      //CGPoint point = [longPress locationInView:_tableView];

      NSIndexPath *indexPath = [_collectionView indexPathForItemAtPoint:point];

      //NSIndexPath *indexPath = [_tableView indexPathForRowAtPoint:point];

      if (indexPath != nil) {

         NSLog(@"%ld", indexPath.row);

      }


   }

   else if ([longPress state] ==UIGestureRecognizerStateEnded) {

      //长按事件结束

   }

}   

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值