iOS开发禁用多个按钮同时点击导致误触

iOS开发禁用多个按钮同时点击导致误触

在开发iOS项目的时候很多开发者都不会考虑这样的一个问题,包括我也不会——一个界面内有多个按钮或者touch事件同时进行会怎么样?

单从字面上看可能不容易理解,举个比较容易理解的例子.
在某个应用的首页上,有两个按钮,我们单独的点击每一个按钮都会触发一次点击事件,这个本身没有任何毛病,类似于点击第一个按钮跳转到第一个子界面,点击第二个按钮跳转到第二个子界面.但是我们是做的移动开发,我们会不会有过这样的尴尬呢?我们手指比较粗,或者多个手指同事操作, 偶然间的我们会发生误触,导致一个尴尬的场景——两个按钮同时点击了,那么样的结果就是,会闪现两次跳转页面,即跳转第一个子界面和跳转第二个子界面都会发生.很显然这个不是我们想要的.那么怎么屏蔽呢?

1.我们可能会想到禁用按钮点击的方式,如果按钮1点击了,立刻禁止按钮2的点击,事件结束后开启按钮2的点击,同样的按钮2页做类似的操作,
实验下来有效么? 不能说完全无效,如果禁止按钮点击的代码已经实现了的话.
我们多次尝试,还是会发现有误触现象.这个方法原理上行得通,但是,真正点击的时候,你会发现禁止按钮点击的实现和点击按钮的事件的先后并不能完全保证…
如果两次点击稍微错开一点点时间差是没有问题的,但是如果两次点击很接近就会出现问题.
如果是这样的状态,没有问题
这里写图片描述
但是如果时间段上移一点,则一样没有效果
这里写图片描述

当然如果你说你可以采用延迟执行的方式,保证每次执行都会延迟操作,并且做判断…当然这样复杂的操作是肯定可以实现的,但是很显然太复杂了.
那么我们就没有办法了吗?或者我们找找系统方法,看看有没有能够实现的其他途径.

2.很显然,iOS开发的框架中是有这样的方法的.

  • 4
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值