Android 屏幕双击事件的捕获简单示例

在Android游戏开发中,我们可能经常要像PC操作一样在屏幕上双击。对于屏幕双击操作,Android 1.6版本以前并没有提供完善的手势识别类,Android 1.5的SDK中提供了android.view.GestureDetector.OnDoubleTapListener,但经测试无法正常工作,不知是何原因。最终我们的解决方案如下面的代码:

Java代码

public class TouchLayout extends RelativeLayout { public Handler doubleTapHandler = null; protected long lastDown = -1; public final static long DOUBLE_TIME = 500; public TouchLayout(Context context) { super(context); } public TouchLayout(Context context, AttributeSet attrs) { super(context, attrs); } public TouchLayout(Context context, AttributeSet attrs, int defStyle) { super(context, attrs, defStyle); } public boolean onTouchEvent(MotionEvent event) { this.handleEvent(event); if (event.getAction() == MotionEvent.ACTION_DOWN) { long nowDown = System.currentTimeMillis(); if (nowDown - lastDown < DOUBLE_TIME) { if (doubleTapHandler != null) doubleTapHandler.sendEmptyMessage(-1); } else { lastDown = nowDown; } } return true; } protected void handleEvent(MotionEvent event) { switch (event.getAction()) { case MotionEvent.ACTION_DOWN: //Do sth 这里处理即可 break; case MotionEvent.ACTION_UP: //Do sth break; } } }

以上就是对Android 屏幕双击的事件捕获的示例代码,后续继续补充相关资料,希望能帮助开发Android应用的朋友。

时间: 2024-09-20 08:48:02

Android 屏幕双击事件的捕获简单示例的相关文章

Android 屏幕双击事件的捕获简单示例_Android

在Android游戏开发中,我们可能经常要像PC操作一样在屏幕上双击.对于屏幕双击操作,Android 1.6版本以前并没有提供完善的手势识别类,Android 1.5的SDK中提供了android.view.GestureDetector.OnDoubleTapListener,但经测试无法正常工作,不知是何原因.最终我们的解决方案如下面的代码: Java代码 public class TouchLayout extends RelativeLayout { public Handler do

Android 的触摸事件详解及示例代码_Android

由于触摸(Touch)而触发的事件 Android的事件:onClick, onScroll,onFling等等,都是由许多个Touch组成的.其中Touch的第一个状态肯定是ACTION_DOWN,表示按下了屏幕.之后,touch将会有后续事件,可能是: ACTION_MOVE //表示为移动手势 ACTION_UP //表示为离开屏幕 ACTION_CANCEL //表示取消手势,不会由用户产生,而是由程序产生的 一个Action_DOWN, n个ACTION_MOVE, 1个ACTION_

单击和双击事件的冲突处理示例代码

  这篇文章主要介绍了单击和双击事件的冲突处理方法,需要的朋友可以参考下   先上代码:   <head>  <title></title>  <script src="Scripts/jquery-1.4.1.js" type="text/javascript"></script>  <script type="text/javascript" language="ja

单击和双击事件的冲突处理示例代码_jquery

先上代码: 复制代码 代码如下: <head> <title></title> <script src="Scripts/jquery-1.4.1.js" type="text/javascript"></script> <script type="text/javascript" language="javascript"> $(function ()

Android开发之Socket通信传输简单示例

本文实例讲述了Android Socket通信传输实现方法.分享给大家供大家参考,具体如下: 1.开篇简介 Socket本质上就是Java封装了传输层上的TCP协议(注:UDP用的是DatagramSocket类).要实现Socket的传输,需要构建客户端和服务器端.另外,传输的数据可以是字符串和字节.字符串传输主要用于简单的应用,比较复杂的应用(比如Java和C++进行通信),往往需要构建自己的应用层规则(类似于应用层协议),并用字节来传输. 2.基于字符串传输的Socket案例 1)服务器端

[Unity3d for android]屏幕触摸事件

移动物体: [csharp] view plaincopy using UnityEngine;   using System.Collections;      public class example : MonoBehaviour {       public float speed = 0.1F;       void Update() {           if (Input.touchCount > 0 && Input.GetTouch(0).phase == Tou

JS实现鼠标单击与双击事件共存

 本篇文章主要是对JS实现鼠标单击与双击事件共存的简单实例进行了介绍,需要的朋友可以过来参考下,希望对大家有所帮助 一直都认为在Web开发中,双击事件都是少至又少地使用,直到最近项目需要,要在一个按钮上绑定单击与双击两件事件.开始也觉得不就是给按钮绑下两个事件而已罢了--只是后来才明白,是我想得太简单,在双击事件触发的同时也会触发单击的~囧   通过一番研究后,终于利用JS中"setTimeout"延时执行方法的办法,将单击延迟300毫秒执行才解决了,代码如下:    代码如下: &l

Android 实现双击退出的功能_Android

实现android双击后退键退出当前APP功能 实现该功能基本思路是, 1, 监听后退键 , 比较两次后退间隔 , 低于两秒则出发退出 2, 退出当前APP 我选择在基类中BaseActivity 中设置监听,代码如下: public void onBackPressed() { //Preferences 中获取是否双击退出 boolean isDoubleClick = true; //BaseApplication.get("ifDoubleClickedBack", true)

Java List双击事件实现方法_java

本文实例简述了Java List双击事件实现方法,有着不错的借鉴价值.分享给大家供大家参考之用.具体方法如下: 1. 定义一个MouseListener: 2. 在mouseListener中增加mouseClicked事件: 3. 由MouseEvent的getSource()获得List对象: 4. 由List的getSelectedIndex()事件获得点击项的Index: 5. 根据Index,用List的getItem()方法获得点击项; 6. 最后,用addMouseListener