相关疑难解决方法(0)

如何在RecyclerView中显示确切的项目数?

我试图在RecyclerView中显示确切的(例如3项).我们的Web应用程序显示如下:

在此输入图像描述

如果我移动物品:

在此输入图像描述

并释放鼠标,它自动来到这个: 在此输入图像描述

在Android中,我使用RecyclerView显示图像:

在此输入图像描述

如何准确显示RecyclerView可见区域中的3个项目?如何避免显示"半"项目?这可能吗?

RecyclerView:

        <android.support.v7.widget.RecyclerView
            android:layout_width="wrap_content"
            android:layout_height="130dp"
            android:id="@+id/rvProducts" />
Run Code Online (Sandbox Code Playgroud)

回收站视图中的一项:

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

    <ImageView
        android:layout_width="100dp"
        android:layout_height="wrap_content"
        android:padding="10dp"
        android:id="@+id/ivProduct"
        android:src="@drawable/noimage"/>

</LinearLayout>
Run Code Online (Sandbox Code Playgroud)

码:

    LinearLayoutManager layoutManager
            = new LinearLayoutManager(getActivity(), LinearLayoutManager.HORIZONTAL, false);
    RecyclerView productImageList = (RecyclerView) view.findViewById(R.id.rvProducts);
    productImageList.setLayoutManager(layoutManager);
    GalleryRecyclerAdapter adapter = new GalleryRecyclerAdapter(images);
    productImageList.setAdapter(adapter);
Run Code Online (Sandbox Code Playgroud)

android android-layout android-recyclerview

16
推荐指数
2
解决办法
1万
查看次数

RecyclerView可见项目数量

我正在我的应用程序中创建一个水平的RecyclerView.
它必须一次在屏幕上显示2个图像(因此每个图像的宽度必须是屏幕的50%).
现在它工作正常,但每个项目占据屏幕的所有宽度.

这是我的代码

mRecyclerView = (RecyclerView) view.findViewById(R.id.recycler_main_ads);
        LinearLayoutManager mLinearLayoutManager = new LinearLayoutManager(getActivity());
        mLinearLayoutManager.setOrientation(LinearLayoutManager.HORIZONTAL);
        mRecyclerView.setLayoutManager(mLinearLayoutManager);
        RecyclerViewAdapter adapter = new RecyclerViewAdapter(tmp, R.layout.lv_main_screen);
        mRecyclerView.setAdapter(adapter);
Run Code Online (Sandbox Code Playgroud)

这是项目的布局

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
              android:layout_width="match_parent"
              android:layout_height="wrap_content"
              android:orientation="horizontal"
              android:weightSum="1">

    <ImageView
        android:id="@+id/iv_main_ad"
        android:layout_width="0dp"
        android:layout_height="match_parent"
        android:layout_weight="0.5"
        android:scaleType="fitXY"
        android:src="@drawable/baner_gasoline"
        />

</LinearLayout>
Run Code Online (Sandbox Code Playgroud)

正如您所看到的,我尝试使用Layout_gravity ="0.5",但它没有帮助.

我试图指定layout_width = ... dp,但我无法获得正好一半的屏幕.

我想在项目布局中添加另一个ImageView,但在这种情况下我会遇到适配器的麻烦,因为我想实现带圆圈(无限)的水平列表视图

这是我的适配器:

public class RecyclerViewAdapter extends RecyclerView.Adapter<RecyclerViewAdapter.MyHolder> {

    private List<Integer> mImages;
    private int itemLayout;

    public RecyclerViewAdapter(ArrayList<Integer>  imageResourceIds, int itemLayout) {
        this.mImages = imageResourceIds;
        this.itemLayout = itemLayout;
    }


    @Override
    public MyHolder onCreateViewHolder(ViewGroup parent, int …
Run Code Online (Sandbox Code Playgroud)

android android-recyclerview

7
推荐指数
1
解决办法
2万
查看次数

设置 Recycler View Visible 行数最多 3 个项目,即使它有更多项目

卡在这个关于RecyclerView可见项目计数的问题要求:- RecyclerView3+项目但是,需要显示 3 个项目(其他项目可以通过滚动到达) RecyclerView<=3项目,需要显示完整的项目

Recyclerview 设置适配器代码

     cardoptionlist.clear();
    cardoptionlist.addAll(savedcards);
    cardoptionlist.add(new CardModel(true));

    if (cardOptionAdapter == null) {
        cardOptionAdapter = new CardOptionAdapter(getActivity(), cardoptionlist, this);
    }


    if (rcv_card_options.getLayoutManager() == null) {

        rcv_card_options.setLayoutManager(new LinearLayoutManager(getActivity()));

    }

    rcv_card_options.addItemDecoration(new DividerItemDecoration(getActivity(), LinearLayoutManager.VERTICAL, 0, false));
    rcv_card_options.setItemAnimator(new DefaultItemAnimator());

    rcv_card_options.setHasFixedSize(true);
    rcv_card_options.setItemViewCacheSize(20);
    rcv_card_options.setDrawingCacheEnabled(true);
    rcv_card_options.setAdapter(cardOptionAdapter);
Run Code Online (Sandbox Code Playgroud)

Recyclerview Xml 文件

      <android.support.v7.widget.RecyclerView
        android:id="@+id/rcv_card_options"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:background="@drawable/rounded_white_app_color_border_8dp"
        android:paddingBottom="2dp"

        android:paddingLeft="8dp"
        android:paddingRight="8dp"
        android:paddingTop="2dp"

        >
Run Code Online (Sandbox Code Playgroud)

提前致谢

android android-recyclerview

7
推荐指数
1
解决办法
4657
查看次数