2011-05-30 486 views
1

我在按鈕上有一個onLongClick事件,但長按鼠標後,不會刪除彩色突出顯示。 我也有一個onClick事件在相同的按鈕,其行爲如預期。onLongClick後突出顯示按鈕不亮

換言之,該按鈕在開始點擊時會着色,並且在釋放點擊時應該移除該顏色。對於onClick,它工作正常,但onLongClick突出顯示不會被刪除。

無論onLongClick返回true還是false,這都是一樣的。

+0

你能告訴我們聽者代碼嗎? – MByD 2011-05-30 20:25:02

回答

0

對於有類似問題的其他人: 不清除按鈕上的高亮部分通常是由onLongClick偵聽器消耗事件而不取消選擇引起的。嘗試類似的東西

MotionEvent cancel = MotionEvent.obtain(e2); 
cancel.setAction(MotionEvent.ACTION_CANCEL); 
view.onTouchEvent(cancel); 
cancel.recycle(); 

並且你應該看到它取消選擇,只要你不是還吃了ACTION_CANCEL。