美文网首页
ios中事件处理的几个问题

ios中事件处理的几个问题

作者: 阳光沙滩海浪狗尾巴草 | 来源:发表于2016-06-08 13:02 被阅读0次

1.ios的事件处理可以分为三类:触摸 加速计(摇一摇) 远程控制

2.响应者对象:继承UIResponder的对象,(可以理解为可以处理事件的对象)UIApplication,UIView,UIViewController都继承自UIResponder

3.UITouch对象

当手指触摸屏幕时系统会自动创建与手指相关联的UITouch对象,一根手指对应一个UITouch对象

UITouch对象的作用是记录与手指相关联的信息eg:触摸的时间,位置,阶段等

当手指移动时系统会更新UITouch对象 离开时销毁该对象

4.UITouch的一些属性

5.UITouch的一些方法

6.事件处理过程

产生事件后系统会把事件添加到由UIApplication管理的事件处理队列中

UIApplication取出最前面的事件交给应用程序主窗口keyWindow

keyWindow一次按照父子控件传递下去

注意:如果父控件不能接受事件子控件也不能接收事件

即:userInteractionEnable = NO;

hidden = YES;(父控件隐藏自控件也隐藏)

alpha = 0.0~0.01;(自控件跟着透明)

此外imageView默认userInactionEnable = NO,且imageView不能通过storyBoard添加自控件代码可以;

7.事件处理的底层实现

底层是通过调用hitTest方法返回最合适的view的过程:

1)先判断自己能否接受事件

2)然后判断点是否在自己身上

3)从后往前遍历子控件,转换point坐标[self convertPoint:point toView:childView],调用子控件的hitTest方法

4)若有return childView

5)若无return self

8.事件响应的顺序

相关文章

  • ios中事件处理的几个问题

    1.ios的事件处理可以分为三类:触摸 加速计(摇一摇) 远程控制 2.响应者对象:继承UIResponder的对...

  • iOS事件的响应者链

    iOS 事件响应者链 1 iOS中的事件 触摸事件 加速计事件 远程控制事件 在iOS中不是任何对象都能处理事件,...

  • UI部分-事件处理

    iOS事件处理- 用户使用App产生的事件及响应方法: iOS中不是任何对象都能处理事件,只有继承UIRespon...

  • UI进阶05——事件处理

    事件处理 触摸事件 iOS中的事件?在用户使用app过程中,会产生各种各样的事件。iOS中的事件可分为3大类型:触...

  • iOS 事件以及手势的处理

    iOS 事件以及手势的处理 首先引用深入浅出iOS事件机制,iOS触摸事件处理详解,详解iOS触摸事件与手势识别三...

  • iOS事件的传递和响应(iOS响应者链条)

    iOS中的时间可以分为3大类型:iOS中的事件类型 一 . 响应者对象 在iOS中不是任何对象都能处理事件,只有继...

  • 事件学习笔记

    iOS中,不是任何对象都能处理事件,只有继承了UIResponder的对象才能接收并处理事件.处理事件的对象叫@“...

  • iOS事件处理机制

    事件类型 iOS的事件可以分为三类:触摸事件,加速计事件,远程控制事件 iOS中不是任何对象都能处理对象,只有继承...

  • iOS中事件处理

    iOS中事件有:1.触摸事件(手指放在屏幕上就是一个触摸事件),2.加速计事件(摇一摇功能),3.远程控制事件(蓝...

  • iOS 基础-02

    transform 事件 iOS中的事件可以分为3大类型 iOS中并不是所有的对象都能处理事件,只有基础于UIRe...

网友评论

      本文标题:ios中事件处理的几个问题

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