您的位置:首页 > 移动开发 > Android开发

android OnTouch-->OnLongClick-->OnClick事件顺序

2016-12-06 11:25 555 查看
这是我之前面试遇到过的题目事件的机制

1、首先要知道默认情况下监听事件触发的机制

OnTouch-->OnLongClick-->OnClick

btnListener.setOnTouchListener(new View.OnTouchListener() {
@Override
public boolean onTouch(View view, MotionEvent motionEvent) {
LogUtil.d("执行Touch");
return false;
}
});

btnListener.setOnLongClickListener(new View.OnLongClickListener() {
@Override
public boolean onLongClick(View view) {
LogUtil.d("执行LongClick");
return false;
}
});

btnListener.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
LogUtil.d("执行Click");
}
});

2、如果将OnTouch的返回值设置为true,就是监听事件不往下传递,因此不会触发OnLongClick和OnClick事件

3、如果将OnLongClick的返回值设置为true,那么只会触发OnTouch和OnLongClick事件

没什么难点,理解记住就行啦!
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: