Android 防止按钮控件被重复点击

AndroidAndroid防止过快点击造成多次事件执行(防止按钮重复点击 在用户使用 Android 应用的时候,经常会出现过快且多次点击同一按钮的情况,一方面这是因为应用或手机当前有些卡顿,另一方面也可能是由于很多应用并没有设置按钮点击时的 selector 或者其它按钮响应方式(例如点击按钮按钮放大,常见于游戏),导致用户误认为没有点击到当前按钮,当然,除了相对应的对应用进行优化和设置点击selector以外,我们还可以做一些其它的工作,例如,判断按钮的 onCli 阅读详情

在开发中经常会遇到这样的情况,一个按钮点击后会弹出Toast或者Dialog,如果快速重复地点击,则Toast则会重复地出现. 而我们想要的效果是一定时间内的点击只生效一次,或者说这种快速且重复的点击为无效点击.


点击进入: 品牌服饰鞋包9.9元特价包邮抢购:http://shop109590806.taobao.com/


解决的思路如下:

 1. 需要定义一个全局变量 lastClickTime, 用来记录最后点击的时间.

 2. 每次点击前需要进行判断, 用lastClickTime 和当前时间想比较,并且更新最后点击时间,若小于临界值,则算无效点击,不触发事件

 注:其实用时间去判断重复点击,更多的是防止短时间大量重复或者也可是说是无效的操作, 而间隔时间要根据具体项目中需求情况而定. 

下面请看代码:

工具类:

 

[java]  view plain copy
  1. public class CommonUtils  
  2.     private static long lastClickTime;  
  3.     public static boolean isFastDoubleClick()  
  4.         long time System.currentTimeMillis();  
  5.         long timeD time lastClickTime;  
  6.         if 0 timeD && timeD 800    
  7.             return true    
  8.             
  9.         lastClickTime time;     
  10.         return false    
  11.      
  12.  

 

控件点击的处理:

 

[java]  view plain copy
  1. public void onClick(View v)    
  2.     if (CommonUtils.isFastDoubleClick())    
  3.         return   
  4.     }else 
  5.         //弹出Toast或者Dialog  
  6.     
  7.     

这样,两次点击时间相隔小于800ms,便不会触发事件,具体的临界时间可以根据需求自己修改.
曲线积分与曲面积分总结_曲线、曲率、挠率以及离散曲线 曲线曲线,听起来很简单,看起来也很直观,但是如果我们看一下维基百科上关于曲线的定义: 设 I=[a,b]为一实数区间,即实数集的非空子集,那么曲线c 就是一个连续函数c : I → X 的映像,其中X 为一个拓扑空间。不禁让人疑惑,为什么要这么抽象的定义呢?为什么不用函数、微积分里面的定义?的确不太好, 比如 ,合理函数,但这只是一个点。再考虑曲线 ,它是可微的,但是可能并不如我们想象的光滑?... 阅读详情

相关推荐

matlab空间散点拟合曲线,matlab离散点拟合曲线

matlab曲线拟合与数值点标注实例_工程科技_专业资料。实例 1: 现已知两组...Matlab教程 曲线拟合工具箱 数学科学与技术学院 胡金燕 lionfr@ 曲线拟合定义 在实际工程应用和科学实践中,经常需要寻求 两个(或多个)变量间的关系,而......(p,x); %获得x点处对相应的y值 plot(x,y,'r*',x,y1,'b'); %画出离散点和拟合曲线 xlabel('墨水浓度...

weixin_29577613的博客 3067

Android之有效防止按钮多次重复点击的方法(必看篇)

为了防止测试妹子或者用户频繁点击某个按钮,导致程序在短时间内进行多次数据提交or数据处理,那到时候就比较坑了~ 那么如何有效避免这种情况的发生呢? 我的想法是,判断用户点击按钮间隔时间,如果间隔时间太短,则认为是无效操作,否则进行相关业务处理 首先将这块提取为工具类(方便接下来的调用),现在就起名为:ButtonUtils public class ButtonUtils { private static long lastClickTime = 0; private static long DIFF = 1000; private static int lastButton

matlab拟合空间曲线。散点拟合三维曲线

问题:已知三组数据,就是直角坐标系中的x,y,z的三个数组,要求在matlab中拟合出这条空间曲线。 帖子源数据: a= [22.77,17.13,14.37,12.98,12.34,12.12,12.11,12.18,12.27,12.32,12.32,12.27,12.18,12.11,12.12,12.34,12.98,14.37,17.13,22.77]; b=[23.75,21.25,18.75,16.25,13.75,11.25,8.75,6.25,3.75,1.25,-1.25,-3.75,

Aristotle__的博客 1万+

Android 防止过快(多次)点击的实现方法

很多用户经常会出现过快且多次点击同一按钮的情况,本篇文章主要介绍了Android 防止过快点击的实现方法,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧

kotlin扩展函数避免快速点击

//定义有效点击时长 private var clickEffectiveTime = 1000L //记录上次点击的时间 private var lastClickTime: Long = 0 infix fun View.clickDelay(clickAction: () -> Unit) { this.setOnClickListener { if (this.hashCode() != hash) { hash

qq_44203816的博客 936

Android 防止连续点击的方法

在开发中会遇到这种情况,就是连续快速点击一个按钮,这个按钮也许是触发启动一个activity也许是访问网络数据或者是别的,而此时的连续点击就会造成多次触发这些事件,造成不必要的activity启动或者资源浪费等等。要解决此方法很简单,只需要以下这么做: 首先定义一个Utils类: public class Utils{     private static long lastClickT

MySunshine的专栏 978

防止按钮快速点击的方法

public class Utils { // 两次点击按钮之间的点击间隔不能少于1000毫秒 private static final int MIN_CLICK_DELAY_TIME = 1000; private static long lastClickTime; public static boolean is...

ZhangXuxiaoqingnian的博客 913

防止抖动

/** 防抖动点击 @author jiangshicheng */ public class AntiShakeUtils { private final static long INTERNAL_TIME = 1000; /** Whether this click event is invalid. @param target target view @return true,...

zck123456789的博客 779

matlab空间曲面拟合,【Matlab】离散点拟合曲面

Matlab中可以使用interp函数和griddata函数来实现插值,从而得到拟合曲面从曲面上采样离散点拟合曲面1.离散点采样为了获取离散点,首先需要从某个特定的曲面上采样。其中利用数学的方法,就是先生成采样曲线的x-y坐标,并根据曲面方程获取对应的z值;%我们以螺旋采样为例%构建采样的坐标点x-ytheta = 0:0.025*pi:10*pi;r7 = 0 + 0.1*theta;x = r...

weixin_32557927的博客 7725

三维离散点最优空间圆拟合及实现

已知三维空间离散点坐标(xi, yi, zi),构建一个空间圆使得空间点尽可能靠近拟合的空间圆。效果如下图 首先,所有离散点尽可能在一个平面上,平面方程可表示为 (1) 写成矩阵形式为, ,式中 ,, ...

jiangjjp2812的专栏 1万+

在Matlab中根据离散点坐标绘制空间曲面

使用Matlab内部函数griddata进行插值 % 读取离散点坐标(x,y,z)数据文件,生成空间曲面 % 数据文件格式为:每行分别为x、y和z坐标,各数值之间以空格作为分隔符 clc; clear; load Points.txt;  %读取数据文件 x=Points(:,1); y=Points(:,2); z=Points(:,3); % 下面三行为测试数据,分别是

lixiaoguang20的博客 2万+

计算机图形学 第六章 曲线曲面建模技术

文章目录1 参数方程2 参数曲线的一般形式3 张量积形式的参数曲面4 连续性的定义 参数连续性Ck5 插值、逼近和拟合6 Bernstein多项式7 Bezier曲线及曲面,构造方法和性质,DeCasteljau算法Bezier曲线Bezier曲面Casteljau算法8 B样条基函数的Cox递推公式9 B样条曲线10 均匀B样条曲线11 准均匀和非均匀B样条曲线准均匀B样条曲线非均匀B样条曲线12 非均匀有理B样条曲面(NURBS)传送门 1 参数方程 要求:理解 2 参数曲线的一般形式 要求:基函

日天家的猫 3824

谈谈曲线与曲面

非参数曲面方法通常用于表示复杂的自由曲面,例如汽车车身表面的设计或复杂的机械零件的表面。非参数曲线方法通常用于表示复杂的自由形状,例如CNC加工中的自由曲线或汽车车身设计中的曲线。非参数曲线曲面是一种与参数曲线曲面相对的概念。在非参数方法中,曲线或曲面不是通过参数方程来定义的,而是通过其他方式,例如直接给出点坐标或者通过离散数据来描述形状。参数表示法便于对曲线或曲面进行分段描述,可以在不同的参数区间内描述不同的曲线或曲面段。参数表示法使曲线的边界容易确定,且参数与曲线上各点的位置相关,具有直观的几何意义。

T20151470的博客 1015

01-CAD中曲线、曲面的表达

计算机辅助设计,即借助计算机的各类输入方便设计者进行设计意图的表达、修改、存储等。这个过程中最为重要的即要采取合适的方法将要设计的模型数据在计算机中进行表达。模型数据根据设计领域的不同而有不同形式,但作为真实世界的模拟,最为主要的还是三维模型数据。怎么在计算机中表示一个三维实体模型?

JiangHao的博客 2141

贝塞尔曲线曲面原理及推导过程

③逼近:先给定由若干个型值点勾画的一条折线轮廓,然后要求用曲线、曲面逼近这个折线轮廓,折一折线轮廓构成的多边形称为控制多边形。①插值:用光滑的曲线或曲面把给定的若干个离散点连接起来,即由型值点构造的曲线或曲面通过所有的型值点;显式或隐式方法可以非常直观的表示初等解析曲线曲面,曲线曲面的特性也可以通过表示形式清楚的表现出来。⑥规格化的参数变量t∈[0,1],使其相应的几何分量是有界的,而不必用另外的参数去定义边界;由上图可知,当组合的曲线达到2阶连续性的时候,曲线之间就已经有了非常好的光滑连接。

2301_78882629的博客 2005

三维建模之曲面的数学模型

曲面是空间具有两个自由度的点的轨迹,常见的有平面、旋转面和二次曲面。二次曲面指任何N维的超曲面,其定义为多元二次方程的解的轨迹。 曲线-曲面的结构特征 1,曲线的结构特征 曲线可看作是一个点在空间连续运动的轨迹。按点的运动轨迹是否在同一平面,曲线可分为平面曲线和空间曲线;按点的运动有无一定规律,曲线又可分为规则曲线和不规则曲线。 因为曲线是点的集合,所以画出曲线上的一系列点的投影,并将各点的同面投影依次光滑连接,得到该曲线的投影,这是绘制曲线投影的一般方法。若能画出曲线上一些特殊的点,如

因为喜欢,所以坚持。 5043

离散点最小(凸)包围边界查找

根据Darel Rex Finley的程序,其实现了最小凸多边形边界查找java版的实现

PseudoScience 1万+
上一篇: Android在网页下(WebView中运用HTML)点击按钮打开本地手机应用程序
下一篇: Android在Service中弹出对话框(Dialog),即全局性对话框
___小星星丶
博客等级 码龄16年 164粉丝 25原创
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值