2017-02-27 66 views
0

我之前問過類似的問題,但答案不是很有幫助,我找不到任何解決方案。如何獨立處理ACTION_DOWN和ACTION_MOVE

我想知道一種方法來檢測ACTION_DOWN當我們只觸摸某個視圖,並檢測ACTION_MOVE時,我們只在屏幕上移動我們的手指,因爲我所得到的是ACTION_DOWN和ACTION_MOVE同時被調用,當我將我的手指放在視圖上。

任何人都可以請發表一個簡單的代碼如何做到這一點。

+0

正如您在類似問題中提到的那樣,您需要設置一個閾值大小,低於該大小時忽略移動。 – meatspace

+1

@meatspace以及如何做到這一點,我無法弄清楚它? – hasan

回答

0

這是原始的運動事件。您可能可以使用GestureDetector並檢測點擊和滑動。

問題是ACTION_MOVE將在檢測到任何移動時被調用,例如在觸摸屏上施加更多壓力可能會將觸摸點移動幾個像素左右。

+0

我可以做一個if語句,在手指壓力的這個不確定性的某個閾值下,這會導致移動被觸發。如果是,那我該如何做到這一點。 – hasan

+0

這不僅僅是壓力,用戶可能會移動手指幾毫米(即使他正在執行觸摸/點擊)。當用戶'ACTION_MOVE'時,你可以做的是從MotionEvent得到'getX'和'getY',跟蹤X和Y從ACTION_DOWN的增量。然後你可以定義一些門檻,你會說:好吧,這不是觸摸,這個用戶正在移動他的手指。 – Gudin

+0

我明白你說的可以向我展示一個示例代碼,因爲我在觸摸事件中遇到了一些問題。 – hasan

相關問題