大家好,关于android双击事件 我相信大家都知道 API中是有个方法,但是必须在Activity中在能使用。
对于到底用不用android 双击事件API各有各看法。

在Activity中使用API

优点:省时省力,别人写东西,直接用就行了,不担心有BUG

缺点:代码写在activity中 总感觉有些乱。

自己写个onDoubleClick方法

优点:自己写东西,好控制,灵活性强,想放哪放哪。
缺点:需要消耗点时间,检查BUG之类
 
好了,最近我也遇到了需要处理双击事件的问题,我是这样处理
我用了android的API 但是我也很好整理。

上代码吧,只有2个类 一个当然是Activity 另一个就是OnDoubleClick事件处理类

import android.app.Activity;

import android.os.Bundle;

import android.view.GestureDetector;

import android.view.MotionEvent;

import android.view.View.OnTouchListener;

/**

*

* <p>classinstruction:内部界面 核心Activity</p>

* create in2011-12-2 @author Mercury

*/

public class GameActivity extends  Activity {

GameActivityHelper helper;

privateGestureDetector gd;

@Override

public voidonCreate(Bundle savedInstanceState) {

super.onCreate(savedInstanceState);

helper=newGameActivityHelper(this);

helper.init();

setContentView(helper.getGameView());

gd=newGestureDetector(this,new OnDoubleClick());

}

@Override

public booleanonTouchEvent(MotionEvent event) {

returngd.onTouchEvent(event);

}

}

import android.view.GestureDetector;

import android.view.MotionEvent;

public class OnDoubleClick extendsGestureDetector.SimpleOnGestureListener{

@Override

public booleanonDoubleTap(MotionEvent e) {

//TODO

returnfalse;

}

//    @Override

//    publicboolean onDoubleTapEvent(MotionEvent e) {

//        returnsuper.onDoubleTapEvent(e);

//    }

}

代码也还算整洁。 API中对于双击有两种处理,

一种是双击后执行一次:onDoubleTap

一种是双击后执行两次:onDoubleTapEvent

这里我只需要双击后执行一次就行了,那里注释掉了

还有需要特别注意是在自己Activity中重写父类Activity方法

@Override
 public boolean onTouchEvent(MotionEvent event) {
  return gd.onTouchEvent(event);
 }
这个方法。我在网上看到有很多人在Activity中 实现implementsOnTouchListener 后会要求你重写onTouch方法来实现双击。

这完全是误导人做法,本人亲自试过,双击是无效,普通点击还是有效我是在SDK1.6版本中试

这是个细节希望大家多注意下。

这里onTouchEvent是Activity中方法,而不是实现某个接口而来,这就是为什么只能在Activity中处理双击事件的原因,

如果你需要用androidAPI处理双击事件就必须重写Activity中onTouchEvent 方法 否则与GestureDetector中有关方法都无效

onTouch 只要实现了OnTouchListener接口View或者Activity都必须重写方法,他是不能实现GestureDetector一些功能

android 触摸屏双击事件相关推荐

  1. Android实现双击事件的监听

    本文转自:Android实现双击事件的监听 Android实现view的双击事件监听,一般使用的场景,列表双击顶部回到第一条! 双击监听 /*** view双击监听事件*/ public class ...

  2. android 处理双击事件

    // 计算点击的次数 private int count = 0; // 第一次点击的时间 long型 private long firstClick = 0; // 最后一次点击的时间 privat ...

  3. Android实现双击事件的两种方式

    Work around的方法是先监听onTouch事件来监听连续点击次数,每次点击都布置一个间隔时间的延时任务,延时任务执行时判断间隔内是否还有点击,如果没有则发布点击次数,重置计数. 实现代码如下: ...

  4. android按钮双击事件触发事件吗,Button.PerformClick()不会触发点击事件,如果该按钮不可见在android...

    我希望我的btnAppShare按钮被点击,即使按钮是不可见的,我已经wriiten此代码后按钮1点击侦听器是可见的基本上,我希望完全执行button1的setOnClickListener事件后,我 ...

  5. 关于android 双击事件

    大家好,关于android双击事件 我相信大家都知道 API中是有个方法的,但是必须在Activity中在能使用. 对于到底用不用android 双击事件API各有各的看法. 在Activity中使用 ...

  6. android 按键双击,实现Android监控任意控件或按键双击事件方法

    为了实现对Android任意控件和按键进行双击事件的监听,所以写了一个可以在代码中任意移植的解决方法. 一.解决思路 为了实现双击事件的监听,首先需要一个线程来执行两次点击事件的判断,决定是否属于一次 ...

  7. android 拦截点击事件,Android双击事件拦截方法

    下文我们介绍两种双击事件拦截的方式 1.通过Android的事件分发机制进行拦截(dispatchTouchEvent) 话不多说,直接上代码: /** 判断是否是快速点击 */ private st ...

  8. Android 自定义双击和单击事件,支持时间间隔

    背景: 随着移动端的快速发展,实体按键已基本被触摸屏所取代,使用者和手机的信息交流,依赖于屏幕.屏幕不仅作为一个显示器,同样兼顾着输入设备,拥有输入输出两种功能,雌雄同体. 功能:点击,是屏幕使用最多 ...

  9. android 双击事件

    局限于双击屏幕触发 1.MainActivity.java import com.xu.service.LearnGestureListener;import android.app.Activity ...

最新文章

  1. 谷歌Colab也搞“超级会员”,普通会员云GPU被降级,想用高端得加钱
  2. golang 获取路径 文件名 后缀
  3. OS_CORE.C(7)
  4. ifconfig vs ip: comparing the two network configuration commands
  5. python可变参数和关键字参数位置_python中函数的默认参数和可变长参数如何排列?...
  6. python路径规划算法可视化_路径规划问题:DIJKSTRA算法 以及Python实现
  7. JAVA中JFRAME關閉事件及捕獲
  8. 在docker for win中使用portainer管理容器
  9. 协作开发——使用git在多台机器上实现协作开发
  10. Robotium在输入框输入文字
  11. 1.MySql驱动的jar包下载
  12. 中兴手机怎么与计算机连接网络连接不上,ZTE中兴为什么wifi连接上却不能上网...
  13. excel查找通配符波浪号,星号
  14. 「保姆级教学」带你闹清楚JAVA人的TOM猫是啥,再整明白Mac下怎么安装Tomcat
  15. html伸缩布局,HTML-CSS:伸缩布局
  16. 线上3D产品展示的方式
  17. 软件工程 学习笔记 知识梳理
  18. 从Eclipse官网查找自己要的插件地址 来安装
  19. Photoshop文字之——制作写在宣纸上的水彩字特效
  20. 软件测试02:软件测试的定义和目的

热门文章

  1. 赶在元旦前夕!10分钟用Python批量定制化发送元旦祝福邮件!
  2. 七Redis 数据库
  3. 为什么重写equals方法就一定要重写hashCode方法
  4. 2016最新经典爆笑职场笑话
  5. 用 SharedPreferences 存储进行记住密码 和保存用户名(记住密码)
  6. 五个可以避免的BYOD错误
  7. 如果你试图爱上一个人
  8. linux的命令综合小型合集(有些命令忘了的话不妨来看看吧~~)
  9. 在shell中常用的特殊符号
  10. python tkmessagebox_[Python] tk json 做的GUI 人人影视下载资源解析