項目實際須要,一個組件須要同時相應OnCLickListener和OnTouchListener,致使一個問題是:按住一個控件不動,另一個控件並不受影響,能夠隨意點擊,並相應相應的事件。即便界面跳轉後,點擊仍然在響應上一個Activity的按鈕時間。很詭異。處處Google,而後找到了問題所在,這裏寫個Demo,說明下問題。oschina博客愈來愈很差用了,代碼很簡單,不貼了,說說過程和結論就能夠了。android
在一個Activity AA裏面寫兩個Button,分別是A和B,兩個Button都setOnClickListener,setOnTouchListener,setOnLongClickListener。假設點擊Button B之後界面跳轉到Activity BB,那麼,有以下現象:按住Button A不動,連續點擊Button B,將會跳出多個Activity BB界面出來。即便在Activity BB界面已經在當前最頂端,點擊仍然在相應Activity AA的事件。測試
這是由於(測試機器爲Android5.0)多點觸控在當前界面默認是開啓的,只要在Button所在組件的父容器添加以下屬性便可:spa
android:splitMotionEvents="false"事件
根據測試,相應順序爲:ACTION_DOWN-->onClick-->onLongClick-->ACTION_UP博客