Android - 自定义多击事件

Posted 来世当猪

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Android - 自定义多击事件相关的知识,希望对你有一定的参考价值。

按钮双击事件 :

双击的原理:当第一次点击的时候记录下点击的时间 A,然后第二次点击的时候获取到第二次的时间 B。如果 B -500 的差值小于上一次点击的时间的话,则认为这两次点击是一次双击事件。

通过记录点击开始时间,到第二次的点击事件,相减得出的时间,将时间判断是否大于500毫秒,是大于500毫秒就是双击了

		if(firstclicktime > 0)
			long sencondclicktime = SystemClock.uptimeMillis();
			long time = sencondclicktime - firstclicktime;
			if(time < 500)
					Toast.makeText(this, "双击", Toast.LENGTH_SHORT).show();
			else 
				firstclicktime = 0;
			
			return ;
		
		firstclicktime = SystemClock.uptimeMillis();

然而这种方法远远不能达到要求,如果有多次点击代码启不是更麻烦?

所以我们采用google给我们提供的代码,进行使用

	private long[] hits = new long[2];
	System.arraycopy(hits, 1, hits, 0, hits.length - 1);
				// 重新给 mHits[1]赋值
				hits[hits.length - 1] = SystemClock.uptimeMillis();
				if (hits[0] >= (SystemClock.uptimeMillis() - 500)) 
				Toast.makeText(this, "双击", Toast.LENGTH_SHORT).show();

点击的次数激活其中就在定义的数组个数上




以上是关于Android - 自定义多击事件的主要内容,如果未能解决你的问题,请参考以下文章

Android避免快速双击按钮最简单好用的方式

Android 自定义事件监听器

Android 自定义View——自定义点击事件

Android:在自定义视图上使用android绑定点击事件

Android 自定义组件 事件处理

Android 自定义事件监听器