iPhone OS的Touche事件
来源:互联网 发布:ios免费阅读软件 编辑:程序博客网 时间:2024/04/28 01:27
浅谈iphone ios Touche的触摸事件
福胜king原创文章,如需转载,请注明:转载自福胜king的博客 http://blog.csdn.net/wfs_king
作为一名手机客户端的开发者,无论开发游戏还是应用,都梦想在各大market中脱颖而出。成就第二个愤怒的小鸟,因此纵观各大market的Top 10作品,都具有十足的亮点。首当其冲的就非完美的用户体验莫属 了。因此我们可以总结道:设计良好的移动客户端软件首先要让用户获得良好的操作体验,直接,便捷,精心设计的交互是一个软件成成功的关键。
在此,和大家一起来浅谈下iphone开发下的交互事件的处理(之前困扰很久的问题...),iphone上多点触发输入是PC 和Android平台所没有的。因此iPhone OS的编程接口提供了一个集合类((NSSet *)touches)来传递用户当前的输入的组合信息,在介绍iphone OS 的触摸响应事件之前,我们先来熟悉下Cocoa类库提供的的集合类NSSet,iPhone OS通过NSSet传递硬件传感器传来的各种组合触摸信息。
1 (void)touchesBegan:(NSSet *)touches withEvent:(UIEvent *)event {}2 (void)touchesMoved:(NSSet *)touches withEvent:(UIEvent *)event {}3 (void)touchesEnded:(NSSet *)touches withEvent:(UIEvent *)event {}4 (void)touchesCancelled:(NSSet *)touches withEvent:(UIEvent *)event {}
(1) 获取所有触摸信息。
可以直接使用 touches参数:
NSMutableSet *mutableTouches = [touches mutableCopy];
也可以通过 event参数获得:
NSSet *allTouches = [event allTouches];
(2) 依次处理每一个触摸点
通过[allTouches count]来判断是多触点还是单触点,获取第一个触摸点方法:
UITouch *touch = [[allTouches allObjects] objectAtIndex:0];
获取第二个触摸点:
UITouch *touch2 = [[allTouches allObjects] objectAtIndex:1];第三、第四…多点触摸以此类推。
(3) 针对每个触摸点的处理
通过以下函数考察每个触摸点是单击还是双击:
[touch tapCount]
注意:在使用多触摸时请务必在xxxAppDelegate类的applicationDidFinishLaunching方法中加入下面代码 [glView setMultipleTouchEnabled:YES];
好了,趁热打铁,紧接着在下篇博文中我会分享下Cocos2d中的事件处理机制,其大致原来是iphone ios较为类似的,希望大家继续关注...
- iPhone OS的Touche事件
- iphone开发中关于UIScrollView响应touche事件
- cocos2d Touche 事件响应原理
- Iphone OS 的架构
- iphone OS、Android、Blackberry OS与Palm OS的比较
- iPhone OS和iPhone Simulator的Framework的区别
- iPhone OS提供的音频单元
- iPhone OS提供的音频单元
- iPhone OS提供的音频单元
- 基于raw os 的事件触发系统
- 监听MAC OS的鼠标全局事件
- iPhone OS Technologies
- iPhone OS Technologies
- iphone os 3.0 游戏
- Lazarus支持 Iphone OS
- iPhone OS产品
- 了解iPhone OS框架
- 了解iPhone OS
- 在 JNI 编程中避免内存泄漏
- ZOJ_1078_Palindrom Numbers
- Effective C++学习笔记:初始化列表中成员列出的顺序和它们在类中声明的顺序相同
- 通过mongodb客户端samus代码研究解决问题
- (marker一下)OpenDiameter 编译,安装,调试
- iPhone OS的Touche事件
- 女人与流星
- VC常用数据类型转换
- Object-C 中实现 Singleton (单例) 模式
- 【博客试用】【转】Android开发之Java设计模式基础篇
- Android 如何修改默认的Tab样式
- 当属性中得get和set仅仅只是设值和取值而不需加任何限制时
- Mpc8309上电复位过程
- css翻转效果