android - RecyclerView 内的 RecyclerView 不滚动

标签 android scroll android-recyclerview

我有一个带有 GridLayoutManager 的 Recyclerview,它的子项可能在其中有一个垂直的 RecyclerView。这是屏幕截图:

enter image description here

我已经为这个场景创建了适配器。它正确显示,但无论内部有多少项目,内部 Recyclerview 都不会滚动。谁能建议如何使内部和主要 RecyclerViews 滚动?

最佳答案

我找到了解决方案。我只需要禁用父级的触摸事件,以防 Recyclerview 接收到触摸事件。这是对我有用的代码 fragment :

RecyclerView.OnItemTouchListener mScrollTouchListener = new RecyclerView.OnItemTouchListener() {
    @Override
    public boolean onInterceptTouchEvent(RecyclerView rv, MotionEvent e) {
        int action = e.getAction();
        switch (action) {
            case MotionEvent.ACTION_MOVE:
                rv.getParent().requestDisallowInterceptTouchEvent(true);
                break;
        }
        return false;
    }

    @Override
    public void onTouchEvent(RecyclerView rv, MotionEvent e) {

    }

    @Override
    public void onRequestDisallowInterceptTouchEvent(boolean disallowIntercept) {

    }
}; 

recyclerView.addOnItemTouchListener(mScrollTouchListener);

我在这里找到了答案:Recyclerview inside Scrollview

关于android - RecyclerView 内的 RecyclerView 不滚动,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42858634/

相关文章:

安卓 : RecyclerView row Visibility not working properly

java - 我想检测图像中的对象并在另一个页面中重绘它,所以有人会建议可以使用哪种算法?

android - 将 cordova 项目升级到 visual studio 2015 后,Ripple 找不到 config.xml

javascript - 刷新页面时的scroll()函数

javascript - Setinterval 在滚动时暂停

安卓。在 RecyclerView 中使用 fragments 是对还是错?

java - 使用加密货币进行加密。加密失败,解密正常

android - 如何创建锁屏

jquery - 如何使用 jquery 滚动窗口 onload

android - 空对象引用上的 java.util.ArrayList.size()'