android 处理双击事件

本文介绍了一个触摸监听接口的实现方式,用于检测设备上的双击操作,双击间隔限定为500毫秒内有效。通过记录第一次和第二次点击的时间戳,判断是否为双击行为,并对双击动作做出相应的响应。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

// 计算点击的次数 private int count = 0; // 第一次点击的时间 long型 private long firstClick = 0; // 最后一次点击的时间 private long lastClick = 0; private ButtonOnTouchListener listener = new ButtonOnTouchListener(); private class ButtonOnTouchListener implements OnTouchListener { @Override public boolean onTouch(View v, MotionEvent event) { if (event.getAction() == MotionEvent.ACTION_DOWN) { // 如果第二次点击 距离第一次点击时间过长 那么将第二次点击看为第一次点击 if (firstClick != 0 && System.currentTimeMillis() - firstClick > 500) { count = 0; } count++; if (count == 1) { firstClick = System.currentTimeMillis(); } else if (count == 2) { lastClick = System.currentTimeMillis(); // 两次点击小于500ms 也就是连续点击 if (lastClick - firstClick < 500) { //Log.v("Double", "Double"); if (vv.isScale()) { vv.setScale(false); } else { vv.setScale(true); } } clear(); } } return false; // 清空状态 private void clear() { count = 0; firstClick = 0; lastClick = 0; } }上面是一个实现了触摸(OnTouchListener)接口的双击事件监听器,双击间隔不大于500ms,供大家参考,此值可以自行设置。 
原理:记录第一次和第二次点击时的系统时间,当第二次的时间与第一次的时间差小于300ms时,进行双击的操作响应 

转载于:https://www.cnblogs.com/myittec/archive/2011/09/19/2392853.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值