在recyclerview中平均分配物品

时间:2018-07-27 14:15:46

标签: android android-layout android-recyclerview

我正在尝试在recyclerview中平均分配物品

我在recyclerview中的项目布局是

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:id="@+id/drawer_parent_layout_horizontal"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:orientation="vertical"> 

           <de.hdodenhof.circleimageview.CircleImageView
            android:id="@+id/drawer_V_icon"
            android:layout_width="50dp"
            android:layout_height="50dp"
            android:layout_marginLeft="20dp"
            android:layout_marginTop="10dp"
            android:src="@drawable/myschoools" />

        <TextView
            android:id="@+id/drawer_V_action_text"
            android:layout_width="80dp"
            android:layout_height="wrap_content"
            android:gravity="center"
            android:text="My Schools"
            android:textColor="@color/drawer_background"
            android:textSize="12sp" />
</LinearLayout>

我的recyclerview布局是

  <android.support.v7.widget.RecyclerView
            android:id="@+id/drawer_itemset_3"
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:background="@color/recycleView_background"
            tools:itemCount="3">
</android.support.v7.widget.RecyclerView>

我正在使用以下内容以水平方向加载recyclerview

RecyclerView recyclerView3 = findViewById(R.id.drawer_itemset_3);
ArrayList<ItemData> itemData3 = praperData(3);
RecyclerViewAdapter adapter3 = new RecyclerViewAdapter(itemData3,getApplicationContext(),2);
recyclerView3.setAdapter(adapter3);
LinearLayoutManager linearLayoutManager = new LinearLayoutManager(this);
linearLayoutManager.setOrientation(LinearLayoutManager.HORIZONTAL);
recyclerView3.setLayoutManager(linearLayoutManager);

我得到以下结果,我试图将linearlayout权重更改为1,但是没有效果。

enter image description here

1 个答案:

答案 0 :(得分:1)

我可以通过如下更改recyclerview布局来达到预期的效果,但是,如果有人有更好的解决方案,请随时分享

<RelativeLayout
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    android:background="@color/recycleView_background">

    <android.support.v7.widget.RecyclerView
        android:id="@+id/drawer_itemset_3"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_centerInParent="true"
        android:layout_gravity="center_horizontal"
        android:background="@color/recycleView_background"
        tools:itemCount="3">

    </android.support.v7.widget.RecyclerView>

</RelativeLayout>