手势识别
一、1.点按
UITapGestureRecognizer
2.长按
UILongPressGestureRecognizer
if (UIGestureRecognizerStateBegan == recongnizer.state) {//如果自己的状态等于开始
[recongnizer.view setTransform:CGAffineTransformMakeRotation(M_PI)];//就设置transform旋转属性为180;
}else if(UIGestureRecognizerStateEnded == recongnizer.state){
[recongnizer.view setTransform:CGAffineTransformIdentity];
}
3.拖动
UIPanGestureRecognizer
if (recongnizer.state == UIGestureRecognizerStateChanged) {
CGPoint deltaPoint = [recongnizer translationInView:self.view];//判断在父视图平移的位置
recongnizer.view.transform = CGAffineTransformMakeTranslation(deltaPoint.x, deltaPoint.y);
}else if(recongnizer.state == UIGestureRecognizerStateEnded){
recongnizer.view.transform = CGAffineTransformIdentity;
}
4.捏合
UIPinchGestureRecognizer
if (recongnizer.state == UIGestureRecognizerStateChanged) {
recongnizer.view.transform = CGAffineTransformMakeScale(recongnizer.scale, recongnizer.scale);
}else if(recongnizer.state == UIGestureRecognizerStateEnded){
[UIView animateWithDuration:0.5 animations:^{
recongnizer.view.transform = CGAffineTransformIdentity;
}];
}
5.清扫
UISwipeGestureRecognizer
if (recongnizer.direction == UISwipeGestureRecognizerDirectionUp) {
NSLog(@"向上");
}else if (recongnizer.direction == UISwipeGestureRecognizerDirectionDown){
NSLog(@"向下");
}else if (recongnizer.direction == UISwipeGestureRecognizerDirectionLeft){
NSLog(@"向左");
}else if (recongnizer.direction == UISwipeGestureRecognizerDirectionRight){
NSLog(@"向右");
}
6.旋转
UIRotationGesturecognizer
if (recongnizer.state == UIGestureRecognizerStateChanged) {
recongnizer.view.transform = CGAffineTransformMakeRotation(M_PI);
}
二、综上所述:发现
1>捏合,拖动,旋转,都需要判断状态改变和状态结束
2>清扫需要设置方向,并且判断方向,默认是向右清扫
3>长按需要判断状态开始,和状态结束
4>其他可按需求判断

转载于:https://www.cnblogs.com/yinqiang/p/3486802.html

IOS-开发中手势的处理相关推荐

  1. iOS开发中手势处理简介(二)

    iOS中手势操作事件的产生于传递 发生触摸事件后,系统会将该事件加入到一个由UIApplication管理的事件队列中 UIApplication会从事件队列中取出最前面的事件,并将事件分发下去以便处 ...

  2. ios开发学习-手势交互(Gesture)效果源码分享

    qianqianlianmeng ios开发学习-手势交互(Gesture)效果源码分享 All Around Pull View 介绍:实现视图四个方向(上下左右)都能够拖动更新(pull to r ...

  3. IOS开发之手势——UIGestureRecognizer 共存

    IOS开发之手势--UIGestureRecognizer 共存 在 iPhone 或 iPad 的开发中,除了用 touchesBegan / touchesMoved / touchesEnded ...

  4. iOS开发中常用的方法

    iOS开发中常用的方法 系统弹窗: 过期方法: UIAlertView *alertView = [[UIAlertView alloc]initWithTitle:@"确认报价" ...

  5. iOS开发中的Web应用概述

    为了更好的阅读体验,建议阅读原文 插播广告 -- 几十行代码完成资讯类App多种形式内容页 HybridPageKit :一个针对资讯类App高性能.易扩展.组件化的通用内容页实现框架. 想和我一起全 ...

  6. iOS开发中的神兵利器 [实战系列]-李发展-专题视频课程

    iOS开发中的神兵利器 [实战系列]-11758人已学习 课程介绍         - 140节课程讲解GitHub中近百个过千star的iOS热门开源项目 - 市面上唯一大规模讲解热门的iOS开源项 ...

  7. iOS开发中遇到的一些问题及解决方案【转载】

    iOS开发中遇到的一些问题及解决方案[转载] 2015-12-29 [385][scrollView不接受点击事件,是因为事件传递失败] // //  MyScrollView.m //  Creat ...

  8. ios 开发中 动态库 与静态库的区别

    使用静态库的好处 1,模块化,分工合作 2,避免少量改动经常导致大量的重复编译连接 3,也可以重用,注意不是共享使用 动态库使用有如下好处: 1使用动态库,可以将最终可执行文件体积缩小 2使用动态库, ...

  9. iOS 开发中的多线程

    线程.进程 什么是线程.进程   有的人说进程就像是人的脑袋,线程就是脑袋上的头发~~.其实这么比方不算错,但是更简单的来说,用迅雷下载文件,迅雷这个程序就是一个进程,下载的文件就是一个线程,同时下载 ...

  10. iOS开发中使用[[UIApplication sharedApplication] openURL:]加载其它应用

    iOS 应用程序之间(1) 在iOS开发中,经常需要调用其它App,如拨打电话.发送邮件等.UIApplication:openURL:方法是实现这一目的的最简单方法,该方法一般通过提供的url参数的 ...

最新文章

  1. 计算机应用基础教学实践活动,计算机应用基础与中职数学课程融合教学实践.doc...
  2. antiddos翻译_AntiDDoS8000系列DDoS防御系统
  3. excel2010冻结行列
  4. sql2000-2 4/19
  5. S5PV210的地址映射图
  6. php5.4全局变量,PHP 5 全局变量 - 超全局变量
  7. STM32相关问题解决方法
  8. 学习动态性能表3----v$session_wait
  9. Eclipse打开目标文件夹
  10. wkhtmltopdf生成的pdf分页后文字重叠
  11. 解决征信中心密码控件无法安装
  12. matlab直方图均衡化函数
  13. 51单片机计算机实物焊接,51单片机实验DIY焊电源--串口详细步骤
  14. CATIA V6二次开发——Automation之对象
  15. 毕业设计 Stm32人体心率血氧无线监测系统 - 单片机 物联网
  16. 地图热区随屏幕大小改变
  17. 关于 DataFrame: 处理json数据(re模块,concat...)
  18. 机器人关节(Joint)之间的坐标变换(Transform)
  19. 在cmd命令行中弹出Windows对话框
  20. 网络工程师华为专项配置

热门文章

  1. java基础国庆作业_java程序设计国庆作业
  2. aop对请求后端的参数修改_Spring Boot AOP之对请求的参数入参与返回结果进行拦截处理...
  3. shiro放行_Shiro在Spring Boot中的实践
  4. 污水处理中php是什么药剂,污水处理药剂有哪些?
  5. python udp创建addr_python高级:8.socket通信part1
  6. C++中各种弹出对话框
  7. python生成器和装饰器_python三大法器:生成器、装饰器、迭代器
  8. VMware安装Win7虚拟机
  9. 打印机是微型计算机必须配置的一种,计算机第一章测试卷
  10. ASP.NET 4.0 新特性--Web.Config Transformation(原创)