美文网首页
让两个RecyclerView一起滑动

让两个RecyclerView一起滑动

作者: 苍蝇的梦 | 来源:发表于2018-06-21 16:11 被阅读102次

    2018-06-21 遇到的一点小问题
    之前有个界面做类似表格的小功能,GitHub随便找了个表格控件,但使用了发现坑特多,改个小细节要改的东西不少,高度边距调整也很麻烦。
    就自己用LinearLayoutRecyclerViewHorizontalScrollViewTextView、、、弄了个简单的。

    TableView
    没什么难点,就是有几个需要注意的地方。第一个就是左右两个RecyclerView联动。有一个滑动时,另一个也滑动相应距离。
            leftRecycler.addOnScrollListener(new RecyclerView.OnScrollListener() {
                @Override
                public void onScrollStateChanged(RecyclerView recyclerView, int newState) {
                    super.onScrollStateChanged(recyclerView, newState);
                }
                @Override
                public void onScrolled(RecyclerView recyclerView, int dx, int dy) {
                    super.onScrolled(recyclerView, dx, dy);
                    if (RecyclerView.SCROLL_STATE_IDLE != recyclerView.getScrollState()) {
                        rightRecycler.scrollBy(dx, dy);
                    }
                }
            });
            rightRecycler.addOnScrollListener(new RecyclerView.OnScrollListener() {
                @Override
                public void onScrollStateChanged(RecyclerView recyclerView, int newState) {
                    super.onScrollStateChanged(recyclerView, newState);
                }
                @Override
                public void onScrolled(RecyclerView recyclerView, int dx, int dy) {
                    super.onScrolled(recyclerView, dx, dy);
                    if (RecyclerView.SCROLL_STATE_IDLE != recyclerView.getScrollState()) {
                        leftRecycler.scrollBy(dx, dy);
                    }
                }
            });
    

    然后就是右边表格的宽度。为了省事,使用的HorizontalScrollView获得左右滑动的能力。然后上下分别使用
    RecyclerView展示数据。这样很省事,不过需要根据TextView数量给RecyclerView设置固定宽度。因为TextView宽度是设置的固定的,所以比较省事。记录一下,之前忘记设置了。

    LinearLayout.LayoutParams params = (LinearLayout.LayoutParams) topRecycler.getLayoutParams();
    params.width = TextView宽度*数量;
    topRecycler.setLayoutParams(params);
    

    相关文章

      网友评论

          本文标题:让两个RecyclerView一起滑动

          本文链接:https://www.haomeiwen.com/subject/sftcyftx.html