美文网首页IOS开发路上的故事
iOS - 关于一个view的拖拽

iOS - 关于一个view的拖拽

作者: Mitchell | 来源:发表于2015-08-18 08:54 被阅读2411次
    作者:Mitchell 
    
    • 自定义view
    • 重写touch方法
    • 只要不断的摸当前的view就会调用
      - (void)touchesMoved:(NSSet *)touches withEvent:(UIEvent *)event
    {
        // 拿到UITouch就能获取当前点
        UITouch *touch = [touches anyObject];
        // 获取当前点
        CGPoint curP = [touch locationInView:self];
        // 获取上一个点
        CGPoint preP = [touch previousLocationInView:self];
        // 获取手指x轴偏移量
        CGFloat offsetX = curP.x - preP.x;
        // 获取手指y轴偏移量
        CGFloat offsetY = curP.y - preP.y;
        // 移动当前view
        self.transform = CGAffineTransformTranslate(self.transform, offsetX, offsetY); 
    }
    
    • 触摸事件被打断
      // 触摸事件被迫打断(电话打来)
      - (void)touchesCancelled:(NSSet *)touches withEvent:(UIEvent *)event
      {
      }
    
    • 手抬起的时候调用
      - (void)touchesEnded:(NSSet *)touches withEvent:(UIEvent *)event
      {
        NSLog(@"%s",__func__);
      }
    

    相关文章

      网友评论

        本文标题:iOS - 关于一个view的拖拽

        本文链接:https://www.haomeiwen.com/subject/mltgqttx.html