zoukankan      html  css  js  c++  java
  • Swift中实现点击、双击、捏、旋转、拖动、划动、长按手势的类和方法介绍

    1.UITapGestureRecognizer 点击/双击手势
    代码如下:
    
    var tapGesture = UITapGestureRecognizer(target: self, action: "handleTapGesture:") 
    //设置手势点击数,双击:点2下 
    tapGesture.numberOfTapsRequired = 2 
    self.view.addGestureRecognizer(tapGesture)
    
    2.UIPinchGestureRecognizer 捏 (放大/缩小)手势
    代码如下:
    
    var pinchGesture = UIPinchGestureRecognizer(target: self, action: "handlePinchGesture:") 
    self.view.addGestureRecognizer(pinchGesture)
    
    3.UIRotationGestureRecognizer 旋转手势
    代码如下:
    
    var rotateGesture = UIRotationGestureRecognizer(target: self, action: "handleRotateGesture:") 
     self.view.addGestureRecognizer(rotateGesture) 
    
    4. UIPanGestureRecognizer 拖动手势
    代码如下:
    
     var panGesture = UIPanGestureRecognizer(target: self, action: "handlePanGesture:") 
     self.view.addGestureRecognizer(panGesture) 
    
    5. UISwipeGestureRecognizer 划动手势
    代码如下:
    
    var swipeGesture = UISwipeGestureRecognizer(target: self, action: "handleSwipeGesture:") 
    swipeGesture.direction = UISwipeGestureRecognizerDirection.Left //不设置是右 
    self.view.addGestureRecognizer(swipeGesture)
    
    6. UILongPressGestureRecognizer 长按手势
    代码如下:
    
       var longpressGesutre = UILongPressGestureRecognizer(target: self, action: "handleLongpressGesture:") 
        //长按时间 
        // longpressGesutre.minimumPressDuration
        //所需触摸次数
        /// longpressGesutre.numberOfTouchesRequired 
        self.view.addGestureRecognizer(longpressGesutre) 
    UIGestureRecognizerState 枚举定义如下
    
    enum UIGestureRecognizerState : Int {
    
        case Possible // the recognizer has not yet recognized its gesture, but may be evaluating touch events. this is the default state
    
        case Began // the recognizer has received touches recognized as the gesture. the action method will be called at the next turn of the run loop
        case Changed // the recognizer has received touches recognized as a change to the gesture. the action method will be called at the next turn of the run loop
        case Ended // the recognizer has received touches recognized as the end of the gesture. the action method will be called at the next turn of the run loop and the recognizer will be reset to UIGestureRecognizerStatePossible
        case Cancelled // the recognizer has received touches resulting in the cancellation of the gesture. the action method will be called at the next turn of the run loop. the recognizer will be reset to UIGestureRecognizerStatePossible
    
        case Failed // the recognizer has received a touch sequence that can not be recognized as the gesture. the action method will not be called and the recognizer will be reset to UIGestureRecognizerStatePossible
    }
    
  • 相关阅读:
    Kubernetes——安装GlusterFS分布式文件系统
    Jenkins从入门到精通——SonarQube:持续代码质量检查
    Jenkins从入门到精通——代码质量
    Redis从入门到精通——Redis数据类型——1、字符串(String)命令
    Redis从入门到精通——Redis客户端
    并发查询ElasticSearch, 根据分片来实现
    Golang开源定时任务调度框架robfig/cron优化
    解决Ubuntu17.04以上系统,yarn init报错
    Angularjs中的$q详解
    总结那些有默认margin,padding值的html标签
  • 原文地址:https://www.cnblogs.com/Free-Thinker/p/5329287.html
Copyright © 2011-2022 走看看