zoukankan      html  css  js  c++  java
  • 关于事件的小结

    1、关于手势识别

    Gesture Recognizers是一类手势识别器对象,它可以附属在你指定的View上,并且为其设定指定的手势操作,例如是点击、滑动或者是拖拽。当触控事件 发生时,

    设置了Gesture Recognizers的View会先通过识别器去拦截触控事件,如果该触控事件是事先为View设定的触控监听事件,那么Gesture Recognizers将会发送动作消息给目标处理对象,目标处理对象则对这次触控事件进行处理。

    在一个view中重写了touchBegin和touchEnd 添加了单击手势识别,那么手势识别会拦截touch消息,touchBegin会打印,但是touchEnd由于被拦截所以没有打印。

    添加一个滑动手势识别,同样是有touchBegin和touchMove打印而没有touchEnd。

    在一个button上也添加一个单击手势,是响应button的点击事件还是响应手势识别事件呢?

    button的点击事件其实也是由touchBegin和touchEnd来实现的,根据上个分析,手势识别是会拦截touchBegin和touchEnd的,所以只会响应手势识别的事件。

    2、关于touch触摸事件的参数

    -(void)touchesBegan:(NSSet *)touches withEvent:(UIEvent *)event

    在屏幕上的每一次动作事件都是一次Touch,在iOS中用UITouch对象表示每一次的触控,多个Touch组成一次Event,用UIEvent来表示一次事件对象。

        NSArray *arrayTouches = [event.allTouches allObjects];

        UITouch *aTouch = [arrayTouches objectAtIndex:0];

        

        UITouch * bTouch = [touches anyObject];

        if (aTouch == bTouch) {

            NSLog(@"same touch");

        }

    在touches中的touch对象和在event中的对象是同一个,一般单击的时候用touches 多点触摸的时候用event(按照理解touches是个集合多点触摸的时候应该有两个触摸对象,但是每次都只返回一个)

  • 相关阅读:
    Redis中的批量删除数据库中的Key
    Solr中初学Demo
    Solr中Schema.xml中文版
    Eclipse中web项目的默认发布路径改为外部Tomcat中webapp路径
    Java操作XML的工具类
    Java中创建操作文件和文件夹的工具类
    Java中的操作日期的工具类
    Java POI操作Excle工具类
    【转】怎样写一个解释器
    【转】什么是语义学
  • 原文地址:https://www.cnblogs.com/HypeCheng/p/4777824.html
Copyright © 2011-2022 走看看