web-dev-qa-db-ja.com

RecyclerViewのアイテム間のスペースを削除android

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

ここに私のコードがあります:

layout/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>

layout/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);

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

20
fvasquezjatar

layout/cardview_recycler.xml、Android不要なスペースを置く

<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>

他はすべてそのままです

9
fuelusumar

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

<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>
7
Vicky

私の場合、以下のコードが機能しました

<Android.support.v7.widget.RecyclerView
            Android:id="@+id/freshRecyclerView"
            Android:layout_width="match_parent"
            Android:layout_height="match_parent"
            Android:clipToPadding="false"
            Android:scrollbars="vertical" />
0
Narendra

setVisibiilty(gone)を削除します

削除した後は完全に動作します。

0
Suneel