Recyclerview嵌套Recyclerview,条目显示不全和宽度不能铺满

本文介绍了一种解决多个RecyclerView嵌套时出现的问题的方法,包括只能显示一个Item和Item宽度无法铺满父布局的问题。通过调整onCreateViewHolder方法中的inflate参数,并自定义LinearLayoutManager来设置RecyclerView条目的宽度为MATCH_PARENT。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

项目中遇到多个recyclerview嵌套时,要么只能显示一个Item,要么Item宽度不能铺满填充父布局

最子recyclerview(最里面的)onCreateViewHolder方法中应这样写inflate(R.layout.item_fragment_study_hot_item, parent, false);

然后其父布局inflate(R.layout.item_fragment_study_hot_body, null, false);

这样的写法,解决了recyclerview只能显示一个Item,还有问题是宽度不能铺满,然后在写父recyclerview的setLayoutManager方法时,这样写:

//RecyclerView 条目布局宽度设置match_parent无效果的问题解决 
 //这里为了解决recycleview不能撑满全屏的问题,这里layoutManager不管你布局里是否设置,都不准确,所以需要在代码里
 //重新设置MATCH_PARENT

LinearLayoutManager layoutManager = new LinearLayoutManager(context) {
            @Override
            public RecyclerView.LayoutParams generateDefaultLayoutParams() {
                return new RecyclerView.LayoutParams(ViewGroup.LayoutParams.MATCH_PARENT,
                        ViewGroup.LayoutParams.WRAP_CONTENT);
            }
        };
        layoutManager.setOrientation(LinearLayoutManager.VERTICAL);
        recyclerView.setLayoutManager(layoutManager);

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值