这篇文章给大家分享的是有关Android开发如何实现控件双击事件的监听接口封装类的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。
Android是一种基于Linux内核的自由及开放源代码的操作系统,主要使用于移动设备,如智能手机和平板电脑,由美国Google公司和开放手机联盟领导及开发。
写项目时,要求仿微信朋友圈,双击顶栏置顶,于是封装了双击回调接口,方便大家拿来就用
/**
* Created by Administrator on 2018/4/24.
* 双击
*/
public class OnDoubleClickListener implements View.OnTouchListener{
private int count = 0;//点击次数
private long firstClick = 0;//第一次点击时间
private long secondClick = 0;//第二次点击时间
/**
* 两次点击时间间隔,单位毫秒
*/
private final int totalTime = 1000;
/**
* 自定义回调接口
*/
private DoubleClickCallback mCallback;
public interface DoubleClickCallback {
void onDoubleClick();
}
public OnDoubleClickListener(DoubleClickCallback callback) {
super();
this.mCallback = callback;
}
/**
* 触摸事件处理
* @param v
* @param event
* @return
*/
@Override
public boolean onTouch(View v, MotionEvent event) {
if (MotionEvent.ACTION_DOWN == event.getAction()) {//按下
count++;
if (1 == count) {
firstClick = System.currentTimeMillis();//记录第一次点击时间
} else if (2 == count) {
secondClick = System.currentTimeMillis();//记录第二次点击时间
if (secondClick - firstClick < totalTime) {//判断二次点击时间间隔是否在设定的间隔时间之内
if (mCallback != null) {
mCallback.onDoubleClick();
}
count = 0;
firstClick = 0;
} else {
firstClick = secondClick;
count = 1;
}
secondClick = 0;
}
}
return true;
}
}
具体应用关键代码:
/**
* 顶栏双击,置顶
*/
private void titleDoubleOnClick(){
titleLayout.setOnTouchListener(new OnDoubleClickListener(new OnDoubleClickListener.DoubleClickCallback() {
@Override
public void onDoubleClick() {
listView_neighbour.setSelection(0);//处理双击事件
}
}));
}
感谢各位的阅读!关于“Android开发如何实现控件双击事件的监听接口封装类”这篇文章就分享到这里了,希望以上内容可以对大家有一定的帮助,让大家可以学到更多知识,如果觉得文章不错,可以把它分享出去让更多的人看到吧!
亿速云「云服务器」,即开即用、新一代英特尔至强铂金CPU、三副本存储NVMe SSD云盘,价格低至29元/月。点击查看>>
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。