1、常見的滑動沖突場景
1、外部滑動方向和內(nèi)部滑動方向不一致
2秒咨、外部滑動方向和內(nèi)部滑動方向一致
3稚瘾、上面兩種情況的嵌套
2、滑動沖突的解決方式
1周霉、外部攔截法(推薦使用)
1掂器、重寫ViewGroup的onInterceptouchEvent方法
2、不攔截Action_down俱箱、Action_up事件国瓮,否則后續(xù)的相同事件都會交給ViewGroup處理,事件無法傳遞到View
3狞谱、處理Action_move事件乃摹,根據(jù)情況,攔截水平滑動還是豎直滑動(依據(jù)水平方向和豎直方向上的距離差來判斷是水平滑動還是豎直滑動)
2跟衅、內(nèi)部攔截法
1孵睬、ViewGroup對所有事件都不攔截
2、所有事件都傳遞到子View伶跷,子View根據(jù)需要是否消耗事件掰读,不消耗
則交給父容器ViewGroup進行處理,需要配合requestDisallowInterceptTouchEvent方法