【Android 防止控件被重复点击】但使书种多,会有岁稔时。这篇文章主要讲述Android 防止控件被重复点击相关的知识,希望能为你提供帮助。
在开发中经常会遇到这样的情况,一个按钮点击后会弹出Toast或者Dialog,如果快速重复地点击,则Toast则会重复地出现. 而我们想要的效果是一定时间内的点击只生效一次,或者说这种快速且重复的点击为无效点击.
解决的思路如下:
1. 需要定义一个全局变量 lastClickTime, 用来记录最后点击的时间.
2. 每次点击前需要进行判断, 用lastClickTime 和当前时间想比较,并且更新最后点击时间,若小于临界值,则算无效点击,不触发事件
下面请看代码:
工具类:[代码]java代码:public class CommonUtils { private static long lastClickTime; public static boolean isFastDoubleClick() { long time = System.currentTimeMillis(); long timeD = time - lastClickTime; if ( 0 < timeD & & timeD < 800) { return true; } lastClickTime = time; return false; } } 控件点击的处理:[代码]java代码: public void onClick(View v) { if (Utils.isFastDoubleClick()) { return; }else{ //弹出Toast或者Dialog } } 这样,两次点击时间相隔小于800ms,便不会触发事件,具体的临界时间可以根据需求自己修改. |
推荐阅读
- 十 Appium环境搭建(Windows版)
- [转]APPium搭建二(安装Appium)
- Android 音视频开发入门指南
- app Token config
- Android Studio开发地图问题
- Android中RecyclerView嵌套RecyclerView或嵌套ListView
- Appium 1.6安装步骤
- Android WebView中软键盘会遮挡输入框相关问题
- Android ClassLoader