网站建设资讯

NEWS

网站建设资讯

Android中如何利用Recyclerview实现水平分页

这篇文章主要介绍了Android中如何利用Recyclerview实现水平分页的相关知识,内容详细易懂,操作简单快捷,具有一定借鉴价值,相信大家阅读完这篇Android中如何利用Recyclerview实现水平分页文章都会有所收获,下面我们一起来看看吧。

专注于为中小企业提供成都网站制作、成都做网站、外贸营销网站建设服务,电脑端+手机端+微信端的三站合一,更高效的管理,为中小企业城中免费做网站提供优质的服务。我们立足成都,凝聚了一批互联网行业人才,有力地推动了上千家企业的稳健成长,帮助中小企业通过网站建设实现规模扩充和转变。

解决思路

既然打算用Recyclerview实现,很明显这就可以用GridLayoutManager处理横向滑动的列表,初步实现横向列表的效果,列数为4的横向分页效果

Android中如何利用Recyclerview实现水平分页

横向列表效果是实现了,但是并没有达到设计稿的要求,第二页要默认显示一部分,那么就要从水平方向上去思考解决问题,既然第二页要显示一部分,假如显示16dp,那么将第一页列表宽度减少右边距16dp,第二页就可以在第一页显示了。
在Recyclerview的Adapter中,先上布局:




  

  

  
```

在onBindViewHolder方法中,去修改边距

@Override
public void onBindViewHolder(ItemHolder holder, int position) {
  if (null == bean) {
    return;
  }
  RelativeLayout.LayoutParams params = new RelativeLayout.LayoutParams(ViewGroup.LayoutParams.MATCH_PARENT, DensityUtil.dip2px(86));   //DensityUtil是px转dp的工具类
  int screenWidth = TCommonUtils.getScreenWidth(context);
  if (position <= 3) { //因为每列数量为4个,那么只需要将前4个item的宽度减少32dp
    screenWidth -= DensityUtil.dip2px(32); //宽度减少32dp,即左右各16dp
    params.width = screenWidth;
  } else {
    params.width = screenWidth;
  }
  holder.rlParent.setLayoutParams(params);
  holder.tvTitle.setText(bean.get(position).getTitle());
}```

来看看效果

Android中如何利用Recyclerview实现水平分页

关于“Android中如何利用Recyclerview实现水平分页”这篇文章的内容就介绍到这里,感谢各位的阅读!相信大家对“Android中如何利用Recyclerview实现水平分页”知识都有一定的了解,大家如果还想学习更多知识,欢迎关注创新互联行业资讯频道。


分享文章:Android中如何利用Recyclerview实现水平分页
URL网址:http://cdweb.net/article/gdeshi.html