关于我们

质量为本、客户为根、勇于拼搏、务实创新

< 返回新闻公共列表

RecyclerView的item不充满的整个宽度的原因

发布时间:2023-06-28 21:00:24

额,好长时间没有写博客了,本来预计的计划是每个月写一篇博客的。算了,废话不多说,今天遇到RecyclerView的item没有充满的整个宽度,这里记录一下原因.


1.第一种是在adapter中加载inflater时parent传入为null

item的布局是这样的:

 <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"  android:layout_width="match_parent"  android:layout_height="160dp"  android:background="#48308e"  android:orientation="vertical"  android:padding="10dp">  android:background="@color/line_background_e7e7e7">  <TextView  android:id="@+id/lauch_break_txt"  android:layout_width="match_parent"  android:layout_height="match_parent"  android:layout_margin="20dp"  android:gravity="center"  android:textColor="#bf2780"  android:textSize="18sp"/>

   



 可是,在实际效果中,item并没有充满,match_parent完全没有效果,效果是wrap_content自适应


后面仔细看了代码,发现是在适配器中加载布局时候的问题

一开始是这样写的,在onCreateViewHolder()中

view = View.inflate(mContext, R.layout.item,null); ` return new ClassDayViewHolder(view);

   


后面将这代码改成

view = LayoutInflater.from(mContext).inflate(R.layout.item_today_course,parent,false);

就没有出现item显示不全的问题了。



2.如果第一种不行,第二种原因就是在RecyclerView外随意加一层布局即可充满

 原因是在写Recycleview布局时候未明确宽高,用权重代替。在RecyclerView外用LinearLayout或者RelativeLayout包裹嵌套。今天就记录到这里了。




/template/Home/leiyu/PC/Static