3
A
回答
1
我想出了一個使用OnItemTouchListener的解決方案。
滾動事件由3個MotionEvents組成:ACTION_DOWN
,ACTION_MOVE
和ACTION_UP
。
所以在ACTION_DOWN
我們得到了光標(Y)的垂直位置,並在ACTION_MOVE
上比較了新位置和舊位置。
通過返回true
,onInterceptTouchEvent()方法確保我們攔截滾動事件。
float lastY;
recyclerView.addOnItemTouchListener(new RecyclerView.OnItemTouchListener() {
@Override
public boolean onInterceptTouchEvent(RecyclerView recyclerView, MotionEvent event) {
int action = event.getAction();
if(action == MotionEvent.ACTION_DOWN) {
lastY = event.getY();
}
if (action == MotionEvent.ACTION_MOVE && event.getY() > lastY) {
return true;
}
return false;
}
...
+0
感謝這個答案,我現在就試一試。 –
+0
這個答案有問題,如果我刷下來,但保持我的手指滑下,我也可以再次刷卡。 –
相關問題
- 1. UIWebView允許點擊,但阻止滾動
- 2. 如何向下滾動JScrollPane上的垂直滾動條?
- 3. 如何使div自動滾動下來,但仍然允許向上滾動
- 4. 垂直向下滾動並使用java在Selenium WebDriver中向上滾動
- 5. 向上滾動/向下滾動jquery
- 6. Bootstrap Grid允許垂直滾動
- 7. 如何阻止ScrollViewer向下滾動
- 8. SwipeRefreshLayout不允許我向上滾動
- 9. UIScrollView - 向上滾動,但不向下
- 10. 平滑滾動插件不允許我向下滾動頁面
- 11. JQuery Sortable Scroll,將向上滾動,但不會向下滾動
- 12. 允許或阻止滾動Android中StackView
- 13. 平滑垂直滾動 - 阻止用戶滾動
- 14. 開始向下滾動直到頁腳開始向下滾動
- 15. 自動向下滾動,但在用戶滾動時停止
- 16. 滾動按鈕jQuery向上滾動並向下滾動
- 17. LongListSelector向下滾動收費
- 18. 阻止iPAD滾動,同時允許列表滾動
- 19. UIScrollView只能向下滾動
- 20. 斜面向下滾動,只
- 21. 防止向下滾動
- 22. 向上滾動時向上滾動listview
- 23. JScrollPane-只有垂直滾動?
- 24. UIScrollView只能垂直滾動
- 25. iframe - 垂直滾動只有
- 26. 鼠標滾輪只能向上或向下滾動
- 27. 向JPanel添加垂直滾動功能
- 28. Dojo DataGrid垂直向後滾動
- 29. 防止textarea垂直滾動
- 30. iScroll防止垂直滾動
據我所知,你可以做到這一點使用'onScrollChange'聽者'onScrollStateChanged'你得到垂直滾動的值,即'dy'它會讓你知道這是一個向上一扔一扔或向下。現在你知道這是一團糟,明確地使用'recyclerView.scrollToPosition(items.size() - 1)'將'recylerview'移動到底部;' –