Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/180.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/sqlite/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
android-RecyclerView中的项目越来越小_Android - Fatal编程技术网

android-RecyclerView中的项目越来越小

android-RecyclerView中的项目越来越小,android,Android,我正在使用RecyclerView与StaggedGridLayoutManager和TableLayout 我使用tabLayout刷新RecyclerView,但问题是什么时候 每当我刷新时,RecyclerView中的刷新项越来越小 两张照片清楚地说明了情况 第一张图片: <LinearLayout android:id="@+id/mainBord" android:layout_width="match_parent" an

我正在使用RecyclerView与StaggedGridLayoutManager和TableLayout 我使用tabLayout刷新RecyclerView,但问题是什么时候 每当我刷新时,RecyclerView中的刷新项越来越小 两张照片清楚地说明了情况 第一张图片:

    <LinearLayout
        android:id="@+id/mainBord"
        android:layout_width="match_parent"
        android:layout_height="match_parent"
        android:background="@drawable/row_item_border"
        android:orientation="vertical">

        <ImageView
            android:id="@+id/imageView"
            android:layout_width="match_parent"
            android:layout_height="200dp"
            android:adjustViewBounds="true"
            android:src="@drawable/icon"
            />


        <LinearLayout
            android:id="@+id/buttonsLayout"
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:layout_marginTop="5dp"
            android:paddingBottom="2dp"
            android:orientation="horizontal">

            <TextView
                android:id="@+id/priceedt"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:layout_gravity="center"
                android:layout_marginLeft="5dp"
                android:gravity="center"
                android:layout_weight="1"
                android:textSize="15dp"
                android:text="6$"
                android:textStyle="bold"/>

        <LinearLayout
            android:layout_width="wrap_content"
            android:layout_height="40dp"
            android:layout_weight="1">
            <ImageView
                android:layout_width="20dp"
                android:layout_height="20dp"
                android:layout_gravity="center"
                android:src="@drawable/blank_heart"
                android:id="@+id/like"
                android:adjustViewBounds="true"
                android:layout_weight="1"/>
        </LinearLayout>

        </LinearLayout>

    </LinearLayout>
</android.support.v7.widget.CardView>

    <LinearLayout
        android:id="@+id/mainBord"
        android:layout_width="match_parent"
        android:layout_height="match_parent"
        android:background="@drawable/row_item_border"
        android:orientation="vertical">

        <ImageView
            android:id="@+id/imageView"
            android:layout_width="match_parent"
            android:layout_height="200dp"
            android:adjustViewBounds="true"
            android:src="@drawable/icon"
            />


        <LinearLayout
            android:id="@+id/buttonsLayout"
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:layout_marginTop="5dp"
            android:paddingBottom="2dp"
            android:orientation="horizontal">

            <TextView
                android:id="@+id/priceedt"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:layout_gravity="center"
                android:layout_marginLeft="5dp"
                android:gravity="center"
                android:layout_weight="1"
                android:textSize="15dp"
                android:text="6$"
                android:textStyle="bold"/>

        <LinearLayout
            android:layout_width="wrap_content"
            android:layout_height="40dp"
            android:layout_weight="1">
            <ImageView
                android:layout_width="20dp"
                android:layout_height="20dp"
                android:layout_gravity="center"
                android:src="@drawable/blank_heart"
                android:id="@+id/like"
                android:adjustViewBounds="true"
                android:layout_weight="1"/>
        </LinearLayout>

        </LinearLayout>

    </LinearLayout>
</android.support.v7.widget.CardView>
第二张图片:

    <LinearLayout
        android:id="@+id/mainBord"
        android:layout_width="match_parent"
        android:layout_height="match_parent"
        android:background="@drawable/row_item_border"
        android:orientation="vertical">

        <ImageView
            android:id="@+id/imageView"
            android:layout_width="match_parent"
            android:layout_height="200dp"
            android:adjustViewBounds="true"
            android:src="@drawable/icon"
            />


        <LinearLayout
            android:id="@+id/buttonsLayout"
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:layout_marginTop="5dp"
            android:paddingBottom="2dp"
            android:orientation="horizontal">

            <TextView
                android:id="@+id/priceedt"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:layout_gravity="center"
                android:layout_marginLeft="5dp"
                android:gravity="center"
                android:layout_weight="1"
                android:textSize="15dp"
                android:text="6$"
                android:textStyle="bold"/>

        <LinearLayout
            android:layout_width="wrap_content"
            android:layout_height="40dp"
            android:layout_weight="1">
            <ImageView
                android:layout_width="20dp"
                android:layout_height="20dp"
                android:layout_gravity="center"
                android:src="@drawable/blank_heart"
                android:id="@+id/like"
                android:adjustViewBounds="true"
                android:layout_weight="1"/>
        </LinearLayout>

        </LinearLayout>

    </LinearLayout>
</android.support.v7.widget.CardView>

    <LinearLayout
        android:id="@+id/mainBord"
        android:layout_width="match_parent"
        android:layout_height="match_parent"
        android:background="@drawable/row_item_border"
        android:orientation="vertical">

        <ImageView
            android:id="@+id/imageView"
            android:layout_width="match_parent"
            android:layout_height="200dp"
            android:adjustViewBounds="true"
            android:src="@drawable/icon"
            />


        <LinearLayout
            android:id="@+id/buttonsLayout"
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:layout_marginTop="5dp"
            android:paddingBottom="2dp"
            android:orientation="horizontal">

            <TextView
                android:id="@+id/priceedt"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:layout_gravity="center"
                android:layout_marginLeft="5dp"
                android:gravity="center"
                android:layout_weight="1"
                android:textSize="15dp"
                android:text="6$"
                android:textStyle="bold"/>

        <LinearLayout
            android:layout_width="wrap_content"
            android:layout_height="40dp"
            android:layout_weight="1">
            <ImageView
                android:layout_width="20dp"
                android:layout_height="20dp"
                android:layout_gravity="center"
                android:src="@drawable/blank_heart"
                android:id="@+id/like"
                android:adjustViewBounds="true"
                android:layout_weight="1"/>
        </LinearLayout>

        </LinearLayout>

    </LinearLayout>
</android.support.v7.widget.CardView>
这是我的布局:

    <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:app="http://schemas.android.com/apk/res-auto"
    android:layout_width="match_parent"
    android:orientation="vertical"
    android:layout_height="match_parent">


    <RelativeLayout
        android:id="@+id/toolbar"
        android:layout_width="match_parent"
        android:layout_height="?attr/actionBarSize"

        android:background="@color/gold">

        <LinearLayout
            android:layout_width="match_parent"
            android:layout_height="match_parent"
            android:weightSum="4">

            <Button
                android:id="@+id/button2"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:layout_weight="1"
                android:background="@drawable/button"
                android:text="Filter"
                android:textColor="@android:color/white"
                android:textSize="12sp" />

            <AutoCompleteTextView
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:layout_weight="2"
                android:gravity="center"
                android:text="Enter Search Word"
                android:textColor="@android:color/white"
                android:textSize="12sp" />

            <Button
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:layout_weight="1"
                android:background="@drawable/button"
                android:text="Invite"
                android:textColor="@android:color/white"
                android:textSize="12sp" />

        </LinearLayout>


    </RelativeLayout>


    <android.support.design.widget.TabLayout
        android:id="@+id/tabs"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:layout_gravity="bottom"
        app:tabBackground="@android:color/black"
        android:background="@android:color/white"
        app:tabMode="scrollable"
        app:tabSelectedTextColor="@color/gold"
        app:tabTextColor="@android:color/white" />



    <android.support.v7.widget.RecyclerView
        android:id="@+id/mainrecycle"
        android:layout_width="match_parent"
        android:layout_height="match_parent"

        android:layout_below="@+id/toolbar">

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



</LinearLayout>
    <LinearLayout
        android:id="@+id/mainBord"
        android:layout_width="match_parent"
        android:layout_height="match_parent"
        android:background="@drawable/row_item_border"
        android:orientation="vertical">

        <ImageView
            android:id="@+id/imageView"
            android:layout_width="match_parent"
            android:layout_height="200dp"
            android:adjustViewBounds="true"
            android:src="@drawable/icon"
            />


        <LinearLayout
            android:id="@+id/buttonsLayout"
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:layout_marginTop="5dp"
            android:paddingBottom="2dp"
            android:orientation="horizontal">

            <TextView
                android:id="@+id/priceedt"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:layout_gravity="center"
                android:layout_marginLeft="5dp"
                android:gravity="center"
                android:layout_weight="1"
                android:textSize="15dp"
                android:text="6$"
                android:textStyle="bold"/>

        <LinearLayout
            android:layout_width="wrap_content"
            android:layout_height="40dp"
            android:layout_weight="1">
            <ImageView
                android:layout_width="20dp"
                android:layout_height="20dp"
                android:layout_gravity="center"
                android:src="@drawable/blank_heart"
                android:id="@+id/like"
                android:adjustViewBounds="true"
                android:layout_weight="1"/>
        </LinearLayout>

        </LinearLayout>

    </LinearLayout>
</android.support.v7.widget.CardView>

行项目:

    <LinearLayout
        android:id="@+id/mainBord"
        android:layout_width="match_parent"
        android:layout_height="match_parent"
        android:background="@drawable/row_item_border"
        android:orientation="vertical">

        <ImageView
            android:id="@+id/imageView"
            android:layout_width="match_parent"
            android:layout_height="200dp"
            android:adjustViewBounds="true"
            android:src="@drawable/icon"
            />


        <LinearLayout
            android:id="@+id/buttonsLayout"
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:layout_marginTop="5dp"
            android:paddingBottom="2dp"
            android:orientation="horizontal">

            <TextView
                android:id="@+id/priceedt"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:layout_gravity="center"
                android:layout_marginLeft="5dp"
                android:gravity="center"
                android:layout_weight="1"
                android:textSize="15dp"
                android:text="6$"
                android:textStyle="bold"/>

        <LinearLayout
            android:layout_width="wrap_content"
            android:layout_height="40dp"
            android:layout_weight="1">
            <ImageView
                android:layout_width="20dp"
                android:layout_height="20dp"
                android:layout_gravity="center"
                android:src="@drawable/blank_heart"
                android:id="@+id/like"
                android:adjustViewBounds="true"
                android:layout_weight="1"/>
        </LinearLayout>

        </LinearLayout>

    </LinearLayout>
</android.support.v7.widget.CardView>


有什么想法吗?提前感谢

我认为在更新recyclerview时出现了问题。您应该初始化RecyclerView一次,并仅使用适配器更新列表项。这里有一些代码供参考

    <LinearLayout
        android:id="@+id/mainBord"
        android:layout_width="match_parent"
        android:layout_height="match_parent"
        android:background="@drawable/row_item_border"
        android:orientation="vertical">

        <ImageView
            android:id="@+id/imageView"
            android:layout_width="match_parent"
            android:layout_height="200dp"
            android:adjustViewBounds="true"
            android:src="@drawable/icon"
            />


        <LinearLayout
            android:id="@+id/buttonsLayout"
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:layout_marginTop="5dp"
            android:paddingBottom="2dp"
            android:orientation="horizontal">

            <TextView
                android:id="@+id/priceedt"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:layout_gravity="center"
                android:layout_marginLeft="5dp"
                android:gravity="center"
                android:layout_weight="1"
                android:textSize="15dp"
                android:text="6$"
                android:textStyle="bold"/>

        <LinearLayout
            android:layout_width="wrap_content"
            android:layout_height="40dp"
            android:layout_weight="1">
            <ImageView
                android:layout_width="20dp"
                android:layout_height="20dp"
                android:layout_gravity="center"
                android:src="@drawable/blank_heart"
                android:id="@+id/like"
                android:adjustViewBounds="true"
                android:layout_weight="1"/>
        </LinearLayout>

        </LinearLayout>

    </LinearLayout>
</android.support.v7.widget.CardView>
 @Override
public View onCreateView(LayoutInflater inflater, ViewGroup container,
                         Bundle savedInstanceState) {
    View view = inflater.inflate(R.layout.grievance_list, container, false);
    unbinder = ButterKnife.bind(this, view);

    initRecyclerView();

    //update adapter whenever new data is inserted.
    mmAdapter.updateItems(yourDataList);

    return view;
}

private void initRecyclerView() {
    gaggeredGridLayoutManager = new StaggeredGridLayoutManager(3, 1);
    mAdapter= new RecycleRowItemAdapter(new ArrayList<YourModelClass>);
    mAdapter.setContext(getContext());
    recyclermat.setLayoutManager(gaggeredGridLayoutManager);
    recyclermat.setItemAnimator(new DefaultItemAnimator());
    int spacingInPixels =   getResources().getDimensionPixelSize(R.dimen.photos_list_spacing);
    recyclermat.addItemDecoration(new SpacesItemDecoration(spacingInPixels));
    recyclermat.setAdapter(mAdapter);
}
@覆盖
创建视图上的公共视图(布局、充气机、视图组容器、,
Bundle savedInstanceState){
视图=充气机。充气(R.layout.冤情列表,容器,假);
unbinder=ButterKnife.bind(这个,视图);
initRecyclerView();
//每当插入新数据时更新适配器。
mmAdapter.updateItems(您的数据列表);
返回视图;
}
私有void initRecyclerView(){
gaggeredGridLayoutManager=新的交错边ridlayoutmanager(3,1);
mAdapter=新的RecycleRowItemAdapter(新阵列列表);
setContext(getContext());
回收商设置布局管理器(gaggeredGridLayoutManager);
setItemAnimator(新的DefaultItemAnimator());
int-spacingInPixels=getResources().getDimensionPixelSize(R.dimen.photos\u list\u spacing);
回收商添加装饰(新空间站点装饰(间距像素));
回收器设置适配器(mAdapter);
}
用于更新回收器视图项的内部适配器类创建函数

    <LinearLayout
        android:id="@+id/mainBord"
        android:layout_width="match_parent"
        android:layout_height="match_parent"
        android:background="@drawable/row_item_border"
        android:orientation="vertical">

        <ImageView
            android:id="@+id/imageView"
            android:layout_width="match_parent"
            android:layout_height="200dp"
            android:adjustViewBounds="true"
            android:src="@drawable/icon"
            />


        <LinearLayout
            android:id="@+id/buttonsLayout"
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:layout_marginTop="5dp"
            android:paddingBottom="2dp"
            android:orientation="horizontal">

            <TextView
                android:id="@+id/priceedt"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:layout_gravity="center"
                android:layout_marginLeft="5dp"
                android:gravity="center"
                android:layout_weight="1"
                android:textSize="15dp"
                android:text="6$"
                android:textStyle="bold"/>

        <LinearLayout
            android:layout_width="wrap_content"
            android:layout_height="40dp"
            android:layout_weight="1">
            <ImageView
                android:layout_width="20dp"
                android:layout_height="20dp"
                android:layout_gravity="center"
                android:src="@drawable/blank_heart"
                android:id="@+id/like"
                android:adjustViewBounds="true"
                android:layout_weight="1"/>
        </LinearLayout>

        </LinearLayout>

    </LinearLayout>
</android.support.v7.widget.CardView>
public void updateItems(final List<YourModelClass> newItems) {
    list.clear();
    list.addAll(newItems);
    notifyDataSetChanged();
}
public void updateItems(最终列表newItems){
list.clear();
list.addAll(newItems);
notifyDataSetChanged();
}

我认为在更新recyclerview时出现了问题。您应该初始化RecyclerView一次,并仅使用适配器更新列表项。这里有一些代码供参考

    <LinearLayout
        android:id="@+id/mainBord"
        android:layout_width="match_parent"
        android:layout_height="match_parent"
        android:background="@drawable/row_item_border"
        android:orientation="vertical">

        <ImageView
            android:id="@+id/imageView"
            android:layout_width="match_parent"
            android:layout_height="200dp"
            android:adjustViewBounds="true"
            android:src="@drawable/icon"
            />


        <LinearLayout
            android:id="@+id/buttonsLayout"
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:layout_marginTop="5dp"
            android:paddingBottom="2dp"
            android:orientation="horizontal">

            <TextView
                android:id="@+id/priceedt"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:layout_gravity="center"
                android:layout_marginLeft="5dp"
                android:gravity="center"
                android:layout_weight="1"
                android:textSize="15dp"
                android:text="6$"
                android:textStyle="bold"/>

        <LinearLayout
            android:layout_width="wrap_content"
            android:layout_height="40dp"
            android:layout_weight="1">
            <ImageView
                android:layout_width="20dp"
                android:layout_height="20dp"
                android:layout_gravity="center"
                android:src="@drawable/blank_heart"
                android:id="@+id/like"
                android:adjustViewBounds="true"
                android:layout_weight="1"/>
        </LinearLayout>

        </LinearLayout>

    </LinearLayout>
</android.support.v7.widget.CardView>
 @Override
public View onCreateView(LayoutInflater inflater, ViewGroup container,
                         Bundle savedInstanceState) {
    View view = inflater.inflate(R.layout.grievance_list, container, false);
    unbinder = ButterKnife.bind(this, view);

    initRecyclerView();

    //update adapter whenever new data is inserted.
    mmAdapter.updateItems(yourDataList);

    return view;
}

private void initRecyclerView() {
    gaggeredGridLayoutManager = new StaggeredGridLayoutManager(3, 1);
    mAdapter= new RecycleRowItemAdapter(new ArrayList<YourModelClass>);
    mAdapter.setContext(getContext());
    recyclermat.setLayoutManager(gaggeredGridLayoutManager);
    recyclermat.setItemAnimator(new DefaultItemAnimator());
    int spacingInPixels =   getResources().getDimensionPixelSize(R.dimen.photos_list_spacing);
    recyclermat.addItemDecoration(new SpacesItemDecoration(spacingInPixels));
    recyclermat.setAdapter(mAdapter);
}
@覆盖
创建视图上的公共视图(布局、充气机、视图组容器、,
Bundle savedInstanceState){
视图=充气机。充气(R.layout.冤情列表,容器,假);
unbinder=ButterKnife.bind(这个,视图);
initRecyclerView();
//每当插入新数据时更新适配器。
mmAdapter.updateItems(您的数据列表);
返回视图;
}
私有void initRecyclerView(){
gaggeredGridLayoutManager=新的交错边ridlayoutmanager(3,1);
mAdapter=新的RecycleRowItemAdapter(新阵列列表);
setContext(getContext());
回收商设置布局管理器(gaggeredGridLayoutManager);
setItemAnimator(新的DefaultItemAnimator());
int-spacingInPixels=getResources().getDimensionPixelSize(R.dimen.photos\u list\u spacing);
回收商添加装饰(新空间站点装饰(间距像素));
回收器设置适配器(mAdapter);
}
用于更新回收器视图项的内部适配器类创建函数

    <LinearLayout
        android:id="@+id/mainBord"
        android:layout_width="match_parent"
        android:layout_height="match_parent"
        android:background="@drawable/row_item_border"
        android:orientation="vertical">

        <ImageView
            android:id="@+id/imageView"
            android:layout_width="match_parent"
            android:layout_height="200dp"
            android:adjustViewBounds="true"
            android:src="@drawable/icon"
            />


        <LinearLayout
            android:id="@+id/buttonsLayout"
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:layout_marginTop="5dp"
            android:paddingBottom="2dp"
            android:orientation="horizontal">

            <TextView
                android:id="@+id/priceedt"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:layout_gravity="center"
                android:layout_marginLeft="5dp"
                android:gravity="center"
                android:layout_weight="1"
                android:textSize="15dp"
                android:text="6$"
                android:textStyle="bold"/>

        <LinearLayout
            android:layout_width="wrap_content"
            android:layout_height="40dp"
            android:layout_weight="1">
            <ImageView
                android:layout_width="20dp"
                android:layout_height="20dp"
                android:layout_gravity="center"
                android:src="@drawable/blank_heart"
                android:id="@+id/like"
                android:adjustViewBounds="true"
                android:layout_weight="1"/>
        </LinearLayout>

        </LinearLayout>

    </LinearLayout>
</android.support.v7.widget.CardView>
public void updateItems(final List<YourModelClass> newItems) {
    list.clear();
    list.addAll(newItems);
    notifyDataSetChanged();
}
public void updateItems(最终列表newItems){
list.clear();
list.addAll(newItems);
notifyDataSetChanged();
}

问题在于项目装饰器

    <LinearLayout
        android:id="@+id/mainBord"
        android:layout_width="match_parent"
        android:layout_height="match_parent"
        android:background="@drawable/row_item_border"
        android:orientation="vertical">

        <ImageView
            android:id="@+id/imageView"
            android:layout_width="match_parent"
            android:layout_height="200dp"
            android:adjustViewBounds="true"
            android:src="@drawable/icon"
            />


        <LinearLayout
            android:id="@+id/buttonsLayout"
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:layout_marginTop="5dp"
            android:paddingBottom="2dp"
            android:orientation="horizontal">

            <TextView
                android:id="@+id/priceedt"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:layout_gravity="center"
                android:layout_marginLeft="5dp"
                android:gravity="center"
                android:layout_weight="1"
                android:textSize="15dp"
                android:text="6$"
                android:textStyle="bold"/>

        <LinearLayout
            android:layout_width="wrap_content"
            android:layout_height="40dp"
            android:layout_weight="1">
            <ImageView
                android:layout_width="20dp"
                android:layout_height="20dp"
                android:layout_gravity="center"
                android:src="@drawable/blank_heart"
                android:id="@+id/like"
                android:adjustViewBounds="true"
                android:layout_weight="1"/>
        </LinearLayout>

        </LinearLayout>

    </LinearLayout>
</android.support.v7.widget.CardView>
recyclermat.addItemDecoration(new SpacesItemDecoration(spacingInPixels));

仅在初始化recyclerview时才设置它。

问题在于项目装饰器

    <LinearLayout
        android:id="@+id/mainBord"
        android:layout_width="match_parent"
        android:layout_height="match_parent"
        android:background="@drawable/row_item_border"
        android:orientation="vertical">

        <ImageView
            android:id="@+id/imageView"
            android:layout_width="match_parent"
            android:layout_height="200dp"
            android:adjustViewBounds="true"
            android:src="@drawable/icon"
            />


        <LinearLayout
            android:id="@+id/buttonsLayout"
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:layout_marginTop="5dp"
            android:paddingBottom="2dp"
            android:orientation="horizontal">

            <TextView
                android:id="@+id/priceedt"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:layout_gravity="center"
                android:layout_marginLeft="5dp"
                android:gravity="center"
                android:layout_weight="1"
                android:textSize="15dp"
                android:text="6$"
                android:textStyle="bold"/>

        <LinearLayout
            android:layout_width="wrap_content"
            android:layout_height="40dp"
            android:layout_weight="1">
            <ImageView
                android:layout_width="20dp"
                android:layout_height="20dp"
                android:layout_gravity="center"
                android:src="@drawable/blank_heart"
                android:id="@+id/like"
                android:adjustViewBounds="true"
                android:layout_weight="1"/>
        </LinearLayout>

        </LinearLayout>

    </LinearLayout>
</android.support.v7.widget.CardView>
recyclermat.addItemDecoration(new SpacesItemDecoration(spacingInPixels));

仅当您首次初始化recyclerview时设置它。

发布一些代码。我猜您正在视图绑定中设置大小。回收的视图重用以前的视图。因此,可以对已经缩小的视图应用1/3的缩小。尝试避免根据当前宽度设置宽度,而改为屏幕宽度?这取决于你是如何做的,但值得思考。:)我认为问题在于这个代码
intspacinginpixels=getResources().getDimensionPixelSize(R.dimen.photos\u list\u spacing);回收商。附加装饰(新。空间站点装饰(间距像素))他可能一次又一次地调用回收器视图初始化部分。我曾经遇到过同样的问题。发布一些代码。我猜您正在视图绑定中设置大小。回收的视图重用以前的视图。因此,可以对已经缩小的视图应用1/3的缩小。尝试避免根据当前宽度设置宽度,而改为屏幕宽度?这取决于你是如何做的,但值得思考。:)我认为问题在于这个代码
intspacinginpixels=getResources().getDimensionPixelSize(R.dimen.photos\u list\u spacing);回收商。附加装饰(新。空间站点装饰(间距像素))他可能一次又一次地调用回收器视图初始化部分。我曾经有过同样的问题。
    <LinearLayout
        android:id="@+id/mainBord"
        android:layout_width="match_parent"
        android:layout_height="match_parent"
        android:background="@drawable/row_item_border"
        android:orientation="vertical">

        <ImageView
            android:id="@+id/imageView"
            android:layout_width="match_parent"
            android:layout_height="200dp"
            android:adjustViewBounds="true"
            android:src="@drawable/icon"
            />


        <LinearLayout
            android:id="@+id/buttonsLayout"
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:layout_marginTop="5dp"
            android:paddingBottom="2dp"
            android:orientation="horizontal">

            <TextView
                android:id="@+id/priceedt"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:layout_gravity="center"
                android:layout_marginLeft="5dp"
                android:gravity="center"
                android:layout_weight="1"
                android:textSize="15dp"
                android:text="6$"
                android:textStyle="bold"/>

        <LinearLayout
            android:layout_width="wrap_content"
            android:layout_height="40dp"
            android:layout_weight="1">
            <ImageView
                android:layout_width="20dp"
                android:layout_height="20dp"
                android:layout_gravity="center"
                android:src="@drawable/blank_heart"
                android:id="@+id/like"
                android:adjustViewBounds="true"
                android:layout_weight="1"/>
        </LinearLayout>

        </LinearLayout>

    </LinearLayout>
</android.support.v7.widget.CardView>