代码之家  ›  专栏  ›  技术社区  ›  portfoliobuilder

是否使用上一页和下一页边界进行RecyclerView?

  •  0
  • portfoliobuilder  · 技术社区  · 6 年前

    使用ViewPagers,使用“setPageMargin”可以轻松地显示上一页和下一页。例如,

    vp.setPageMargin(-200) 
    

    enter image description here

    但是如何用RecyclerViews来实现这一点呢?项目必须均匀分布,当前项目应居中。

    为了将我的RecyclerView设置为模仿ViewPager,我利用了PagerSnapHelper()

    LinearLayoutManager linearLayoutManager = new LinearLayoutManager(context, LinearLayoutManager.HORIZONTAL, false);
    SnapHelper snapHelper = new PagerSnapHelper();
    RecyclerView rvHorizontal = findViewById(R.id.rv_horiz);
    rvHorizontal.setLayoutManager(linearLayoutManager);
    snapHelper.attachToRecyclerView(rvHorizontal);
    // set adapter
    mAdapter = new HorizontalAdapter(context, mData);
    rvHorizontal.setAdapter(mAdapter);
    

    1 回复  |  直到 6 年前
        1
  •  2
  •   jaychang0917    6 年前

    但是如何用RecyclerViews来实现这一点呢?物品必须是 平均分布,当前项应居中。

    你只需设置 ViewHolder 实现此效果的项目视图 RecyclerView .

    你应该用 LinearSnapHelper 而不是 PagerSnapHelper .