Android 6.0 scrollview 嵌套recyclerview不能全部显示,高度不正常的问题

本文介绍了解决Android中RecyclerView在特定API版本下无法正确显示所有项的问题。通过将RecyclerView包裹在一个RelativeLayout中,并设置适当的属性,可以确保组件能适配其内容的高度。

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

其实只要布局中的recyclerView外面加上一层相对布局就可以了。  
  
 <RelativeLayout  
            android:layout_width="match_parent"  
            android:layout_height="wrap_content"  
            android:descendantFocusability="blocksDescendants">  
            <!-- DEV NOTE: Outer wrapper relative layout is added intentionally to address issue  
                 that only happens on Marshmallow & Nougat devices (API 23 & 24).  
                 On marshmallow API 23, the "RecyclerView" `layout_height="wrap_content"` does NOT  
                 occupy the height of all the elements added to it via adapter. The result is cut out  
                 items that is outside of device viewport when it loads initially.  
                 Wrapping "RecyclerView" with "RelativeLayout" fixes the issue on Marshmallow devices.  
            -->  
            <android.support.v7.widget.RecyclerView  
                android:id="@+id/my_recycler_view"  
                android:layout_width="match_parent"  
                android:layout_height="wrap_content"  
                tools:listitem="@layout/row_list_item">  
            </android.support.v7.widget.RecyclerView>  
        </RelativeLayout>  
[java] view plain copy
  
[java] view plain copy
mPlateView.setLayoutManager(new GridLayoutManager(this, 3) {  
       @Override  
       public boolean canScrollVertically() {  
           return false;  
       }  
   });  
   mPlateView.setNestedScrollingEnabled(false);  
  
//blog.youkuaiyun.com/ShareUs/article/details/53840407  

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值