按钮快速点击过滤处理
来源:互联网 发布:9分达人阅读 知乎 编辑:程序博客网 时间:2024/05/21 09:25
用户可能会快速的点击按钮, 为了避免快速点击引起不必要的逻辑错误, 我们需记下第一次按下的时间, 等下次用户再点击的时候, 进行时间比对, 如果时间差值大于阈值, 那么才会响应事件, 否则过滤事件
private static long sLastTime;public static synchronized boolean isProcessing() { return isProcessing(300);}/** * 是否处于执行任务状态,若不是,则设接下来[minTime]ms 为执行任务状态 * @param minTime 任务执行时长 * @return 是否处于执行任务状态 */public static synchronized boolean isProcessing(final long minTime) { long newTime = calcTime(minTime, sLastTime); if (newTime == sLastTime) { return true; } else { sLastTime = newTime; return false; }}/** * 下次任务执行到的时间戳 */private static synchronized long calcTime(final long minTime, long lastTime) { if (SystemClock.elapsedRealtime() >= lastTime) { return SystemClock.elapsedRealtime() + minTime; } return lastTime;}
当按钮发生点击事件时, 我们可以使用以下方法进行处理:
public void onClick(View v) { if (isProcessing()) { return; } // TODO 点击事件具体的处理代码 ...}
阅读全文
0 0
- 按钮快速点击过滤处理
- iOS:按钮连续点击 按钮快速点击 如何处理
- 按钮频繁点击处理
- android 解决按钮快速点击
- 按钮点击的延迟处理
- android之按钮快速点击问题测试
- 防止按钮多次快速点击,防误触
- android 防止按钮多次点击的处理?
- UITableViewCell上的按钮点击事件处理
- 自定义UITableViewCell 上按钮点击事件处理
- UITableViewCell上的按钮点击事件处理
- UITableViewCell上的按钮点击事件处理
- 《android按钮点击事件的频繁点击问题处理》
- 【Unity快速实现小功能】NGUI篇——快速使用UIEventListener组件实现,按钮点击功能并添加相应的处理函数
- 事件处理基础 处理按钮点击事件实例 Java核心技术
- Uitablevxiewcell中处理按钮点击的另一种处理方式
- 1、如何处理频繁快速点击事件
- 快速点击事件问题处理(多次点击)
- hdu 1242 Rescue (bfs+优先队列)
- js中setInterval与setTimeout的区别及换背景样例
- idea创建maven项目
- 缩小javascript文件大小之缩编、混淆
- 新手搭建Jenkins进行持续集成
- 按钮快速点击过滤处理
- iis设置允许或禁止访问的文件类型,以及能够解析的文件类型
- python实现二叉树,前序遍历,中序遍历,后续遍历
- Acticity生命周期——三大状态、七大方法
- 分布式事务的解决方案
- cs229-note2
- admin_move_table的重组机制验证(失败了)
- 项目一:股票信息定向爬虫
- echarts+ajax+ssh框架+mysql的简单应用