安卓的事件处理机制

2016-07-29  本文已影响27人  Longwide

ViewGroup.dispatchTouchEvent{
ViewGroup.onInterceptTouchEvent 为true-->ViewGroup.onTouchEvent
ViewGroup.onInterceptTouchEvent 为false-->
{
child.dispatchTouchEvent{
child.onTouchEvent{
touchListener.onTouch为true-->返回true结束
touchListener.onTouch为false-->{
//判断是否clickable或者longclickable
true-> lis.onClick或者lis.onLongClick
}
}返回为true则整个事件结束
为false-->{
parent.onTouchEvent{
//处理完后结束
}
}
}
}
}
2.onInterceptTouchEvent返回true 会阻碍子控件接收事件
3.onTouchListener返回true会阻碍onClik和onLongClick接收事件
4.onTouchEvent返回true会阻碍父控件的onTouchEvent的调用

上一篇下一篇

猜你喜欢

热点阅读