Java 水平循环视图中的上一个和下一个按钮

Java 水平循环视图中的上一个和下一个按钮,java,android,android-recyclerview,Java,Android,Android Recyclerview,我正在创建电子商务应用程序,我想问一下,当我单击“下一步”按钮,然后“回收视图”向右移动并显示下一项,当我单击“上一步”按钮,然后“回收视图”向左移动并显示上一项时 RecyclerView外部的上一个和下一个按钮: 代码: private RecyclerView rcTopPicks; private RecyclerView.Adapter adapter; private LinearLayoutManager layoutManager; private ImageView prev

我正在创建电子商务应用程序,我想问一下,当我单击“下一步”按钮,然后“回收视图”向右移动并显示下一项,当我单击“上一步”按钮,然后“回收视图”向左移动并显示上一项时

RecyclerView外部的上一个和下一个按钮:

代码:

private RecyclerView rcTopPicks;
private RecyclerView.Adapter adapter;
private LinearLayoutManager layoutManager;
private ImageView previousTopPicks, nextTopPicks;

@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container,Bundle savedInstanceState) {
    View view = inflater.inflate(R.layout.fragment_home, container, false);

    previousTopPicks = view.findViewById(R.id.btn_left_top_picks);
    nextTopPicks = view.findViewById(R.id.btn_right_top_picks);

    initView(view);
    getTopPicksData();

    return view;
}

private void initViews(View view) {
    rcTopPicks = view.findViewById(R.id.rc_top_picks);
    layoutManager = new LinearLayoutManager(getContext(), LinearLayoutManager.HORIZONTAL, false);
    rcTopPicks.setLayoutManager(layoutManager);
}

private void getTopPicksData() {
    // Code for get JSON
    ....................
    adapter = new TopPicksAdapter(productList);
    rcTopPicks.setAdapter(adapter);

    // This button is not move to left and not showing 2 previous items
    previousTopPicks.setOnClickListener(new View.OnClickListener() {
        @Override
        public void onClick(View view) {
            rcTopPicks.scrollToPosition(adapter.getItemCount() - 1);
        }
    });

    // This button is not move to right and not showing 2 next items
    nextTopPicks.setOnClickListener(new View.OnClickListener() {
        @Override
        public void onClick(View view) {
            rcTopPicks.scrollToPosition(adapter.getItemCount() + 1);
        }
    });
}

问题是,当我单击“下一步”按钮时,如何将recyclerview的位置向右滚动?以及如何在单击“上一步”按钮时向左滚动recyclerview的位置?

在您的
布局管理器的帮助下尝试滚动到位置,您可以在代码中添加类似的内容

int firstVisible = layoutManager.findFirstVisibleItemPosition() - 1;
int lastVisible = layoutManager.findLastVisibleItemPosition() + 1;

if(lastVisible <= adapter.getItemCount()){
   layoutManager.scrollToPosition(lastVisible);
}
int firstVisible=layoutManager.findFirstVisibleItemPosition()-1;
int lastVisible=layoutManager.findLastVisibleItemPosition()+1;

if(lastVisible)这里的问题是什么?问题是当我单击“下一步”按钮时,如何将recyclerview的位置向右滚动?当我单击“上一步”按钮时,如何将recyclerview的位置向左滚动?@TahirFerlithanks感谢您的回答,但当我单击“下一步”按钮时,不会向右/向左移动。