码迷,mamicode.com
首页 > 其他好文 > 详细

UI第四课

时间:2014-12-05 21:26:34      阅读:169      评论:0      收藏:0      [点我收藏+]

标签:ui   多点触摸   

主要内容:事件处理(触摸、响应者链)

一、事件的基本概念

       UIEvent:事件,是由硬件捕捉的一个表示用户操作设备的对象

       分三类:触摸事件、晃动事件、远程控制事件

       触摸事件:用户通过触摸设备屏幕操作对象、输入数据。支持多点触摸

       触摸的概念:

              UIView支持触摸事件(因为继承于UIResponder),而且支持多点触摸

              需要定义UIView子类,实现触摸相关的方法

              touches...began          / / 开始触摸

              touches...moved         / / 触摸过程中

              touches...ended          / / 结束触摸

              touches...canceled     / / 触摸暂停

      使用触摸实现手势:

      手势:有规律的触摸

       UITouch代表触摸在屏幕上的一根手指,可以获取触摸时间和位置

二、响应者链

       由多个响应者对象组成的链

       UIResponder:响应者类

       iOS中所有能响应事件(触摸、晃动、远程事件)的对象都是响应事件

       系统定义了一个抽象的父类UIResponder来表示响应者,其子类是响应者

       检测触碰视图:

              硬件检测到触摸操作,会将信息传递给UIApplication,开始检测

              UIApplication  ->window  ->viewController  ->view  ->检测所有子视图,最终确认触碰位置,完成响应者链的查询过程

              检测到响应者后,实现touchesBegan:withEvent等方法,即处理事件

              如果响应者没有处理事件,事件会向下传递,如果没有响应者处理事件,则丢弃触摸事件

              事件处理的顺序和触摸检测查询相反

              触摸子视图 ->view  ->viewController  ->window  ->UIApplication

     四个方法

            / / 开始触摸

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

            {

            }

           / / 触摸过程中   

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

           {

           }

          / / 触摸停止

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

          {

          }

         / / 触摸暂停

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

         {

         }

UI第四课

标签:ui   多点触摸   

原文地址:http://blog.csdn.net/phui93/article/details/41751347

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!