22

RecyclerView を使用してアイテムのリストを表示していますが、アイテム間のデフォルトの間隔を削除する必要があります。RecyclerView.LayoutParams を設定し、LinearLayoutManager でマージンをゼロに設定しようとしていますが、うまくいきませんでした!

これが私のコードです:

レイアウト/fragment_recycler.xml

   <android.support.v4.widget.SwipeRefreshLayout
        android:id="@+id/freshSwipeView"
        android:layout_width="match_parent"
        android:layout_height="match_parent">

        <android.support.v7.widget.RecyclerView
            android:id="@+id/freshRecyclerView"
            android:layout_width="match_parent"
            android:layout_height="match_parent"
            android:scrollbars="vertical" />
    </android.support.v4.widget.SwipeRefreshLayout>

レイアウト/cardview_recycler.xml

<android.support.v7.widget.CardView
    android:id="@+id/card_view"
    android:layout_width="match_parent"
    android:layout_height="match_parent">

    <LinearLayout
        android:id="@+id/content"
        android:layout_width="match_parent"
        android:layout_height="match_parent"
        android:orientation="horizontal">

        <mypackagename.ui.view.RecyclingImageView
            android:id="@+id/avatar"
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:scaleType="fitXY"
            android:adjustViewBounds="true"
            android:src="@drawable/img_no_avatar" />

        <TextView
            android:id="@+id/username"
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:gravity="center_vertical"
            android:singleLine="true"
            android:ellipsize="end"
            android:padding="@dimen/spacing"
            android:textColor="@color/black"
            android:layout_alignParentBottom="true"
            android:textSize="@dimen/text_smallest" />
    </LinearLayout>
</android.support.v7.widget.CardView>

RecyclerFragment.java

    /* Setting Layout Manager */
    mLayoutManager = new LinearLayoutManager(getActivity(), LinearLayoutManager.VERTICAL, false);
    RecyclerView.LayoutParams params = new RecyclerView.LayoutParams(RecyclerView.LayoutParams.MATCH_PARENT, RecyclerView.LayoutParams.WRAP_CONTENT);
    params.setMargins(0, 0, 0, 0);
    mLayoutManager.canScrollVertically();
    mRecyclerView.setLayoutManager(mLayoutManager);

私は助けが必要です...

4

5 に答える 5

8

アイテムのルート レイアウトに match_parent の代わりにandroid:layout_height = wrap_contentを指定します

<android.support.v7.widget.CardView
        android:id="@+id/card_view"
        android:layout_width="match_parent"
        android:layout_height="wrap_content">
       -------
       -------
</android.support.v7.widget.CardView>
于 2016-05-02T09:38:59.053 に答える