在我的應(yīng)用中,我希望發(fā)生兩件事。當(dāng)我觸摸并拖動ImageButton時,它應(yīng)該與我的手指一起移動。我OnTouchListener()為此使用,它工作正常。當(dāng)我單擊ImageButton時,它應(yīng)該關(guān)閉活動。我OnClickListener()為此使用,它也可以正常工作。所以,這是我的問題。每當(dāng)我移動ImageButton OnTouchListener按鈕ImageButton時,OnClickListener都會觸發(fā)該按鈕,并且當(dāng)我釋放按鈕移動時,也會在結(jié)束時觸發(fā)。如何在同一個按鈕上使用ontouch和onclick偵聽器而不互相干擾?
3 回答

至尊寶的傳說
TA貢獻1789條經(jīng)驗 獲得超10個贊
onClick和OnTouch事件的問題在于,當(dāng)您單擊Click(意圖單擊)時,它會假設(shè)該事件為OnTouch,因此從不解釋OnClick。周圍的工作
isMove = false;
case MotionEvent.ACTION_DOWN:
//Your stuff
isMove = false;
case MotionEvent.ACTION_UP:
if (!isMove || (Xdiff < 10 && Ydiff < 10 ) {
view.performClick; //The check for Xdiff <10 && YDiff< 10 because sometime elements moves a little
even when you just click it
}
case MotionEvent.ACTION_MOVE:
isMove = true;
- 3 回答
- 0 關(guān)注
- 640 瀏覽
添加回答
舉報
0/150
提交
取消