文档章节

双击(多次点击)事件

chenruibing
 chenruibing
发布于 2015/06/01 19:12
字数 260
阅读 42
收藏 0
package com.itheima.doubleclick;

import android.os.Bundle;
import android.os.SystemClock;
import android.app.Activity;
import android.view.Menu;
import android.view.View;
import android.widget.Toast;

public class MainActivity extends Activity {
	long firstClickTime;
	@Override
	protected void onCreate(Bundle savedInstanceState) {
		super.onCreate(savedInstanceState);
		setContentView(R.layout.activity_main);
	}
	public void click(View view){
		if(firstClickTime>0){
			long sencondClickTime = SystemClock.uptimeMillis();
			long dtime = sencondClickTime - firstClickTime;
			if(dtime<500){
				Toast.makeText(this, "双击了", 0).show();
			}else{
				firstClickTime = 0;
			}
			return;
		}
		//cpu运行的事件  开机就开始运行,重新开启就清0重新计算
		//解决单击一次之后双击不灵的情况
		firstClickTime = SystemClock.uptimeMillis();
		new Thread(){
			public void run() {
				try {
					Thread.sleep(500);
				} catch (InterruptedException e) {
					e.printStackTrace();
				}
				firstClickTime = 0;
			};
		}.start();
	}
}


多次点击事件


package com.itheima.doubleclick;

import android.os.Bundle;
import android.os.SystemClock;
import android.app.Activity;
import android.content.Intent;
import android.view.Menu;
import android.view.View;
import android.widget.Toast;

public class MainActivity extends Activity {
	@Override
	protected void onCreate(Bundle savedInstanceState) {
		super.onCreate(savedInstanceState);
		setContentView(R.layout.activity_main);
	}
	long[] mHits = new long[3];
	//三击事件
	public void click(View view){
		//src 拷贝的源数组
		//srcPos 从源数组的那个位置开始拷贝.
		//dst 目标数组
		//dstPos 从目标数组的那个位子开始写数据
		//length 拷贝的元素的个数
	  System.arraycopy(mHits, 1, mHits, 0, mHits.length-1);
      mHits[mHits.length-1] = SystemClock.uptimeMillis();
      if (mHits[0] >= (SystemClock.uptimeMillis()-500)) {
         Toast.makeText(this, "恭喜你,3次点击了。", 0).show();
      }
	}
}

多次点击原理:

    

© 著作权归作者所有

chenruibing
粉丝 12
博文 203
码字总数 109101
作品 0
潮州
私信 提问
Android多次点击事件

android本次没有提供双击或者多次点击事件,需要我们自己实现。 思想:使用数组记录点击时的系统时间,如果当前点击事件发生后点击了3次并且当前的系统时间和第一次点击事件发生的时间的差值...

zpassion
2015/08/10
2.7K
0
如何为一个按钮(View)设置任意多次点击事件以及可以同时响应多个多次点击事件

一,如何为一个View设置多点击事件 此方法只能让该View响应一个多点击事件。 可使用情景:例如我们有需求让一个按钮只响应一个三击事件或者四击事件等 代码: 二 ,如何让一个View可以同时响...

帅得拖网速
2017/06/28
0
0
GestureDetector类及其用法

当用户触摸屏幕的时候,会产生许多手势,例如down,up,scroll,filing等等。 一般情况下,我们知道View类有个View.OnTouchListener内部接口,通过重写他的onTouch(View v, MotionEvent eve...

程序袁_绪龙
2014/10/08
0
0
GestureDetector类及其用法

当用户触摸屏幕的时候,会产生许多手势,例如down,up,scroll,filing等等。 一般情况下,我们知道View类有个View.OnTouchListener内部接口,通过重写他的onTouch(View v, MotionEvent eve...

sundy_ly
2013/11/27
0
0
用户手势检测-GestureDetector使用详解

一、概述 当用户触摸屏幕的时候,会产生许多手势,例如down,up,scroll,filing等等。 一般情况下,我们知道View类有个View.OnTouchListener内部接口,通过重写他的onTouch(View v, MotionE...

Carbenson
2015/11/17
0
0

没有更多内容

加载失败,请刷新页面

加载更多

Spring Boot 2 快速教程:WebFlux 集成 Mongodb(四)

摘要: 原创出处 https://www.bysocket.com 「公众号:泥瓦匠BYSocket 」欢迎关注和转载,保留摘要,谢谢! 这是泥瓦匠的第104篇原创 文章工程: * JDK 1.8 * Maven 3.5.2 * Spring Boot 2.1....

泥瓦匠BYSocket
33分钟前
2
0
$_ENV

$_ENV数组中的内容是在PHP解析器运行时,从PHP所在服务器中的环境变量, 导入到PHP的全局命名空间, 转变为PHP全局变量。 这些变量很多是由支持 PHP 运行的 Shell 提供的,并且不同的系统很可能...

vinci321
48分钟前
2
0
Guava RateLimiter + AOP注解实现单机限流、统计QPS

1、基于springboot项目pom.xml添加如下依赖: <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-aop</artifactId></dependency><d......

铁骨铮铮
今天
3
0
JAVA NIO Connection reset by peer 异常

客户端主动断开与服务端的连接,但是如果客户端掉线,服务端就接收不到了。。 异常信息 java.io.IOException: Connection reset by peerat java.base/sun.nio.ch.FileDispatcherImpl.read...

Jeremy_pan
今天
2
0
龙芯版办公软件下载

金山wps office   rpm包:http://ftp.loongnix.org/os/loongnix/1.0/os/Packages/w/wps-office-10.8.0.6472-1.a20p1.mips64el.rpm   deb包:http://packages.deepin.com/loongson/pool/......

gugudu
今天
3
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部