日本搞逼视频_黄色一级片免费在线观看_色99久久_性明星video另类hd_欧美77_综合在线视频

國內最全IT社區平臺 聯系我們 | 收藏本站
阿里云優惠2
您當前位置:首頁 > php開源 > 綜合技術 > Android開發——View滑動沖突解決方案

Android開發——View滑動沖突解決方案

來源:程序員人生   發布時間:2016-10-10 08:17:23 閱讀次數:2551次

0. 前言  

我們在Android開發——事件分發機制詳解中深入學習了事件分發機制,為我們解決Android開發中的滑動沖突問題做了初步準備。針對滑動沖突這里給出兩種解決方案:外部攔截法和內部攔截法。

轉載請注明出處:http://blog.csdn.net/seu_calvin/article/details/52600422

 

1.外部攔截法

外部攔截法是指事件都先經過父控件的攔截處理,這里需要注意的是ACTION_DOWN事件父控件中必須返回false,由于如果父控件攔截了DOWN,后續事件也會交給它處理,子控件就沒法拿到事件了,具體緣由已在前言中的鏈接文中介紹過了。接著就是MOVE事件,如果父控件需要此攔截事件,就攔截,不需要就不攔截。最后在UP事件中也默許返回false

外部攔截法不需要改寫子控件,只需要改寫父控件的onInterceptTouchEvent方法,代碼以下:

@Override public boolean onInterceptTouchEvent(MotionEvent ev) { boolean intercepted=false; switch (action) { case MotionEvent.ACTION_MOVE: intercepted=false; break; case MotionEvent.ACTION_MOVE:{ if(父控件需要處理此事件){ intercepted=true;} else{ intercepted=false;} break; } case MotionEvent.ACTION_UP: { intercepted=false; break; } //... return intercepted; }


2.內部攔截法

內部攔截法是指父控件設置為不攔截除ACTION_DOWN之外的任何事件,當DOWN傳遞給子元素時,通過設置getParent().requestDisallowInterceptTouchEvent(false)使父控件不攔截任何事件,此時所有事件都傳遞給子元素,如果子元素需要此事件就直接消耗掉,否則可在ACTION_MOVE通過設置getParent().requestDisallowInterceptTouchEvent(true)使父控件去攔截MOVEUP事件并由自己消耗該事件。

我們需要修改子元素的dispatchTouchEvent方法

public boolean dispatchTouchEvent(MotionEventevent) { switch (action) { case MotionEvent.ACTION_DOWN:{ //使父控件不攔截DOWN之外的1系列事件 getParent().requestDisallowInterceptTouchEvent(true); break;} case MotionEvent.ACTION_MOVE:{ if(父控件需要處理此事件){ getParent().requestDisallowInterceptTouchEvent(false); } break; } case MotionEvent.ACTION_UP: { break; } ... return super.dispatchTouchEvent(event); } 固然,還需要修改父容器的onInterceptTouchEvent()方法,使其默許攔截除DOWN之外的事件,代碼以下: @Override publicboolean onInterceptTouchEvent(MotionEvent ev) { intaction=ev.getAction(); if(action==MotionEvent.ACTION_DOWN){ return false; }else { return true; } }

以上就是兩種解決滑動沖突的解決方案,在其中的條件判斷代碼里加入自己的業務邏輯判斷便可。

轉載請注明出處:http://blog.csdn.net/seu_calvin/article/details/52600422

生活不易,碼農辛苦
如果您覺得本網站對您的學習有所幫助,可以手機掃描二維碼進行捐贈
程序員人生
------分隔線----------------------------
分享到:
------分隔線----------------------------
關閉
程序員人生
主站蜘蛛池模板: 免费观看高清韩国日本大全 | 国产伦精品一区二区三区四区免费 | 久久精彩 | 玖玖精品| 曰韩三级 | 精品无码久久久久久国产 | 成年人av网站 | 91精品国产综合久久福利不卡 | 国产不卡在线视频 | 欧美日韩国产在线一区 | 久久精品久久久久久 | 国产亚洲精品久久久久动 | 日韩久久久久久久久久久久 | 日韩av网站在线 | 久久成年人视频 | 亚洲视频黄色 | 国产精品区一区二区三区 | 黄色大片网站 | 国产精品1区2区 | 亚洲成人av一区二区 | 国产传媒在线 | 亚洲毛片在线看 | 九色91av| 欧美精品a∨在线观看不卡 黄色av免费 | 亚洲一区久久久 | 91精品国产高清久久久久久久久 | 欧美精品久 | 另类激情视频 | 在线免费观看视频一区二区三区 | 亚洲成人av免费在线观看 | 国产精品一区二区三区四区 | 在线观看亚洲人 | 一区视频在线 | 国产午夜视频在线观看 | 在线观看国产精品视频 | 亚洲性激情 | 亚洲区一区二 | 麻豆传媒一区二区三区 | 国产精品久久久久久久久久久免费看 | 亚洲在线观看视频 | 黄视频免费 |