RecyclerView的onInterceptTouchEvent函数不会触发ACTION_MOVE事件。onInterceptTouchEvent函数主要用于拦截触摸事件,判断是否拦截事件交给子View处理或者自己处理。而ACTION_MOVE事件是由子View处理的,不会被RecyclerView的onInterceptTouchEvent函数拦截。

如果您想在RecyclerView中处理ACTION_MOVE事件,可以重写RecyclerView的onTouchEvent函数,在onTouchEvent函数中处理ACTION_MOVE事件。例如:

@Override
public boolean onTouchEvent(MotionEvent event) {
    switch (event.getAction()) {
        case MotionEvent.ACTION_MOVE:
            // 处理ACTION_MOVE事件
            break;
        default:
            break;
    }
    return super.onTouchEvent(event);
}

在这个重写的onTouchEvent函数中,可以处理ACTION_MOVE事件以及其他事件,然后调用super.onTouchEvent(event)将事件传递给子View处理。

请注意,如果您重写了RecyclerView的onTouchEvent函数,在处理ACTION_MOVE事件时,可能会影响RecyclerView的滚动功能。因此,您需要根据具体的需求,合理地处理ACTION_MOVE事件

android RecyclerView onInterceptTouchEvent 函数不触发 ACTION_MOVE

原文地址: https://www.cveoy.top/t/topic/is7Y 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录