iOS7——UIControlEventTouchDown延迟响应问题

问题描述

在iOS7下开发,真机调试时,UIButton的其他事件响应都正常,但是UIControlEventTouchDown事件响应会延迟,而且不同响应区域发生的延时情况不同,有时延迟1s以后响应TouchDown事件,有时候一直按着不动就不响应事件,只有把手指轻轻滑动下才能正常响应TouchDown事件。

问题分析

UIControlEventTouchDown事件是一旦手指碰到按钮就调用了,这样在iOS7上会产生一个冲突,由于iOS7加上了手势滑动返回这么一个动作,在手势滑动返回时那个区域是不允许有UIControlEventTouchDown事件的,不然就会有事件冲突了,系统不知道是要准备返回还是要点击那个Button,所以就加上了TouchDown事件的一个延迟响应。

解决方案

  • 禁止所有滑动返回的手势,让TouchDown能够正常响应
    self.navigationController.interactivePopGestureRecognizer.delaysTouchesBegan=NO;
  • 重写UIButton,捕捉所有的手势事件然后重写
时间: 2024-10-27 07:50:28

iOS7——UIControlEventTouchDown延迟响应问题的相关文章

[ios高级] UIButton 不响应或延迟响应 UIControlEventTouchDown 事件的解决办法

UIControlEventTouchDown即按钮按下时应触发的方法.实际使用过程中会出现延迟响应或间歇无响应,但是放开手指时会直接响应UIControlEventTouchDown.UIControlEventTouchUpInside两个方法,这种情况下,按下按钮不响应任何事件,当移动手指时会响应UIControlEventTouchDown. 1.延迟响应: 一般是因为button放在了UIScrollVIew或UITableView上面,按下按钮时系统会判断是不是滑动手势.将UIScr

AlarmManager闹钟 延迟响应

项目做一个闹钟,需要闹钟可以在时间点准时响应.当闹钟设立数量较少的时候,还算比较可靠,基本都能准时响应.但如果app设立的闹钟的过多,就会有一些闹钟发生延时响应的bug,有时会晚几秒,有时会晚几分钟. 去查看AlarmManager Api文档发现以下: Note: Beginning in API 19, the trigger time passed to this (set) method is treated as inexact: the alarm will not be deliv

KeyBoard 在iOS7和iOS8上通知的区别

首先注册通知如下: NSNotificationCenter.defaultCenter().addObserver(self, selector: "keyboardWillShow:", name:UIKeyboardWillChangeFrameNotification, object:nil) 通知内容: func keyboardWillShow(noti:NSNotification){ var userInfo :NSDictionary = noti.userInfo!

提速1000倍,预测延迟少于1ms,百度飞桨发布基于ERNIE的语义理解开发套件

11月5日,在『WAVE Summit+』2019 深度学习开发者秋季峰会上,百度对外发布基于 ERNIE 的语义理解开发套件,旨在为企业级开发者提供更领先.高效.易用的 ERNIE 应用服务,全面释放 ERNIE 的工业化价值,其中包含 ERNIE 轻量级解决方案,提速 1000倍! 今年 7 月,百度发布持续学习语义理解框架 ERNIE 2.0,在共计 16 个中英文任务上超越BERT.XLNET,取得了 SOTA 的效果. ERNIE2.0 发布以来,ERNIE 产业化应用进程不断加速,易

移动前端知识的一些总结

<!DOCTYPE html><html lang="en"><head> <meta charset="UTF-8"> <title>Title</title></head><body>meta基础知识 H5页面窗口自动调整到设备宽度,并禁止用户缩放页面 ?html 代码<meta name="viewport" content="w

移动web资源整理

2013年初接触移动端,简单做下总结,首先了解下移动web带来的问题 设备更新换代快--低端机遗留下问题.高端机带来新挑战 浏览器厂商不统一--兼容问题多 网络更复杂--弱网络,页面打开慢 低端机性能差--页面操作卡顿 HTML5新技术多--学习成本不低 未知问题--坑多 面对这些问题,一开始我们只能在未知中试错,知道错误的方案才能更容易寻找正确的解决问题思路,2年多来,可看到移动web在业界不断趋向于成熟,各种框架和解决方案不断的涌现让移动端开发不再是个噩梦. 这几天把想到的一点经验先罗列出来

移动端web开发常见问题

上一篇总结了一些有关html5和css3的面试题,这一篇是有关于移动端web开发的常见问题,希望一样对你有一些帮助. Meta相关 1. 添加到主屏后的标题(IOS) <meta name="apple-mobile-web-app-title" content="标题"> 2. 启用 WebApp 全屏模式(IOS) 当网站添加到主屏幕后再点击进行启动时,可隐藏地址栏(从浏览器跳转或输入链接进入并没有此效果) <meta name="a

移动前端知识总结

meta基础知识 H5页面窗口自动调整到设备宽度,并禁止用户缩放页面 <meta name="viewport" content="width=device-width,initial-scale=1.0,minimum-scale=1.0,maximum-scale=1.0,user-scalable=no" /> 忽略将页面中的数字识别为电话号码 <meta name="format-detection" content=&

移动端web开发常见问题------彭记(023)

  Meta相关 1. 添加到主屏后的标题(IOS) <meta name="apple-mobile-web-app-title" content="标题"> 2. 启用 WebApp 全屏模式(IOS) 当网站添加到主屏幕后再点击进行启动时,可隐藏地址栏(从浏览器跳转或输入链接进入并没有此效果) <meta name="apple-mobile-web-app-capable" content="yes"