2013-08-05 22 views
0

我的View實現了onGestureListener,當手勢由用戶完成時(無論是滾動還是滑動移動),都可以通知我。一鍵滾動移動

當指針在屏幕上緩慢移動時,我按預期收到onScroll事件。但是當指針移動得更快時,在得到onFling事件之前,我得到幾個onScroll事件。當onFling事件傳遞與「向上」事件相關的事件時,我想只有在用戶將他的手指從屏幕上移開後纔會觸發事件。

答這會導致不自然的行爲,我的應用程序...

我的問題是:是否有可能抑制上述所有onScroll事件,當用戶執行的舉動顯然是一個一扔運動?

+0

您可以創建一個標誌。當你得到第一個'onScroll'時,使它成爲'true',並且在方法中返回它。當「onFling」完成時,再次將其設爲「false」。 –

+0

此標誌的用途是什麼?我想回應一下,而不是前面的滾動事件。我怎樣才能配置一個標誌,以預測在這一舉動結束時會發生一次拋擲事件?我的問題是,如果一場暴力事件即將到來,我不想對移動事件做出反應。 – Zelig63

+0

問題已解決,但解決方案看起來不太乾淨:在「onFling」功能中,我取消了在「onScroll」功能中實現的所有處理,並且只在速度較大時才考慮「onFling」事件絕對值超過1000。 – Zelig63

回答

0

問題已解決,但解決方案看起來不太乾淨:在「onFling」函數中,我取消了「onScroll」函數中實現的每個處理,並且只考慮其中一個「onFling」速度絕對值大於1000。

+0

你能發佈一段代碼,讓別人知道你是怎麼做到的嗎? – Dullahan