转自:http://blog.163.com/china_uv/blog/static/117137267201252102612185/

UISwipeGestureRecognizer 左右事件相同为非注释代码, 左右事件不同为注释代码。

@implementation GestureRecognizerViewController

-(id)init
{
    if (self == [super init]) {
        
        UISwipeGestureRecognizer *recognizer;    
        recognizer = [[UISwipeGestureRecognizer alloc] initWithTarget:self action:@selector(handleSwipeFrom:)];    
        [recognizer setDirection:UISwipeGestureRecognizerDirectionLeft|UISwipeGestureRecognizerDirectionRight];
        [[self view] addGestureRecognizer:recognizer];    
        [recognizer release];
        
//        recognizer = [[UISwipeGestureRecognizer alloc] initWithTarget:self action:@selector(handleSwipeFrom:)];    
//        [recognizer setDirection:UISwipeGestureRecognizerDirectionLeft];
//        [[self view] addGestureRecognizer:recognizer];    
//        [recognizer release];
//        
//        recognizer = [[UISwipeGestureRecognizer alloc] initWithTarget:self action:@selector(handleSwipeFrom:)];    
//        [recognizer setDirection:UISwipeGestureRecognizerDirectionRight];
//        [[self view] addGestureRecognizer:recognizer];    
//        [recognizer release];
        
    }
    
    return self;
}

- (id)initWithNibName:(NSString *)nibNameOrNil bundle:(NSBundle *)nibBundleOrNil
{
    self = [super initWithNibName:nibNameOrNil bundle:nibBundleOrNil];
    if (self) {
        // Custom initialization
    }
    return self;
}

- (void)viewDidLoad
{
    [super viewDidLoad];
    
    self.view.backgroundColor = [UIColor darkGrayColor];
}

- (void)viewDidUnload
{
    [super viewDidUnload];
    // Release any retained subviews of the main view.
}

- (BOOL)shouldAutorotateToInterfaceOrientation:(UIInterfaceOrientation)interfaceOrientation
{
    return (interfaceOrientation == UIInterfaceOrientationPortrait);
}

-(void) dealloc
{
    for (UISwipeGestureRecognizer *recognizer in [[self view] gestureRecognizers]) {  
        [[self view] removeGestureRecognizer:recognizer];  
    } 
    
    [super dealloc];
}

// ------------------------------------------------------------------------

- (void)handleSwipeFrom:(UISwipeGestureRecognizer *)recognizer{    
    
    NSLog(@"direction ------------- %d", recognizer.direction);
    
    
    if (recognizer.direction == (UISwipeGestureRecognizerDirectionLeft | UISwipeGestureRecognizerDirectionRight)) {    
        NSLog(@"left & right");  
    }
    
//    if (UISwipeGestureRecognizerDirectionLeft == recognizer.direction) {    
//        NSLog(@"left");  
//    }
//    
//    if (UISwipeGestureRecognizerDirectionRight == recognizer.direction) {    
//        NSLog(@"right");  
//    }
}

感叹下IOS的智慧,UISwipeGestureRecognizerDirection定义用的是位移。
typedef enum {
    UISwipeGestureRecognizerDirectionRight = 1 << 0,
    UISwipeGestureRecognizerDirectionLeft  = 1 << 1,
    UISwipeGestureRecognizerDirectionUp    = 1 << 2,
    UISwipeGestureRecognizerDirectionDown  = 1 << 3
} UISwipeGestureRecognizerDirection;

转载于:https://www.cnblogs.com/wangpei/p/4260046.html

UISwipeGestureRecognizer 左右事件捕捉相关推荐

  1. 理清“事件捕捉”和“事件冒泡”

    "事件捕捉"和"事件冒泡"是基于DOM节点树上的DOM事件流,他会以特定的顺序在DOM节点树上进行传播 DOM节点树: 我们看一下事件捕捉和事件冒泡的基本定义 ...

  2. Android--多点触控事件捕捉

    本实例实现的多点触控,当用户一个手指点击屏幕时,显示的是一个触控动作,两个手指点击显示两个,没有则显示为0. 下面给出实现的截图对比: 下面给出本实例的源代码: package irdc.ex07_2 ...

  3. JavaScript事件处理的例子:事件捕捉和冒泡 - event capture and bubble

    Created by Jerry Wang, last modified on Jun 06, 2015 source link: http://www.ido321.com/1570.html 这个 ...

  4. 转:android TextView中超链接的事件捕捉(textview上LINK的点击事件)

    Java代码 package com.cm; import java.util.ArrayList; import android.R.color; import android.app.Activi ...

  5. 【小5聊】winform窗体之最小化事件捕捉以及最小化到任务栏功能

    目录 [效果] [准备图标ico] [添加notifyIcon控件] [鼠标点击还原窗体显示] [完整代码代码] [效果] [准备图标ico] 网上找一个好看的图片,然后线上制作一下ico [添加no ...

  6. springboot bean、容器的初始化,销毁及事件捕捉

    文章目录 1.Bean初始化后执行 2.Spring容器启动后执行 3.Spring 容器各个事件的回调 1.Bean初始化后执行 使用 spring 提供的 @PostConstruct 和 @Pr ...

  7. android 蓝牙连接广播,Android广播接收器蓝牙事件捕捉

    为了捕获蓝牙状态更改( STATE_OFF , STATE_TURNING_ON , STATE_ON , STATE_TURNING_OFF ),请在您的活动中执行此操作: 首先,为您的Androi ...

  8. Android应用中捕捉所有点击事件实现

    一.思路 (1)获取Activity对象: (2)遍历所有子控件: (3)注册点击事件. 二.实现 (1)获取Activity对象 activity对象的获取可以考虑多个方面,从两个方面进行选择: ① ...

  9. jquery源码分析(七)——事件模块 event(二)

    上一章节探讨了事件的一些概念,接下来看下jQuery的事件模块. jQuery对事件的绑定分别有几个API:.bind()/.live()/.delegate()/.on()/click(), 不管是 ...

最新文章

  1. 谁说技术男不适合养猫!90后程序员2天做出猫咪情绪识别软件
  2. 20年第三次架构大调整,腾讯永远年轻!
  3. 聊聊在博客园写博客的这两年《Unity 3D脚本编程:使用C#语言开发跨平台游戏》正式出版...
  4. 关于StreamReader的构造函数
  5. html css jq 弹幕,Jquery.barrager.js
  6. oracle修改字符集_oracle修改数据库字符集
  7. autocad完全应用指南_如何提高CAD画图的速度?有哪些途径和技法?【AutoCAD教程】...
  8. java jdbc 工具_JDBC 工具类
  9. OpenCV学习(7.13)
  10. 哪些思维方式是你刻意训练过的?
  11. struts2拦截器实现登录限制
  12. cad插入块_5大模块,彻底学会CAD块!
  13. linux vrrp 配置命令,华为交换机VRRP配置实例收集(转)
  14. 微信更换绑定手机人工服务器,微信更换已绑定手机号码的操作方法
  15. linux在拥有/etc/xdg的自启动方式
  16. 笔记本绝密内幕 你不知道的代工秘密
  17. OSChina 周日乱弹 —— 每天叫醒我的是Bug
  18. NLP比赛-小布助手对话短文本语义匹配
  19. opta planner_使用Excel Christmas Planner进行整理
  20. ORA-31655,ORA-39154 Objects from foreign schemas have been removed from import

热门文章

  1. 利用抽象工厂创建DAO、利用依赖注入去除客户端对工厂的直接依赖、将有关Article的各种Servlet封装到一个Servlet中(通过BaseServlet进行
  2. Android 自定义控件打造史上最简单的侧滑菜单
  3. Hadoop之道--MapReduce之Hello World实例wordcount
  4. map和struct的多重嵌套
  5. MySQL第6天:MySQL的架构介绍之逻辑架构
  6. 什么事孤儿进程和僵死进程?
  7. phoenixcard 获取下载脚本失败,请确认固件版本是否正确
  8. SpringBoot-hello world
  9. Android解决button反复点击问题
  10. RFID中间件成为全球软件产业争夺新焦点