我正在嘗試使用RecyclerView在這里制作類似旋轉木馬的視圖,我希望項目在滾動時在屏幕中間捕捉,一次一個項目。我試過用了recyclerView.setScrollingTouchSlop(RecyclerView.TOUCH_SLOP_PAGING);但是視圖仍然滾動順暢,我也嘗試使用滾動偵聽器來實現我自己的邏輯,如下所示:recyclerView.setOnScrollListener(new OnScrollListener() { @Override public void onScrollStateChanged(RecyclerView recyclerView, int newState) { super.onScrollStateChanged(recyclerView, newState); Log.v("Offset ", recyclerView.getWidth() + ""); if (newState == 0) { try { recyclerView.smoothScrollToPosition(layoutManager.findLastVisibleItemPosition()); recyclerView.scrollBy(20,0); if (layoutManager.findLastVisibleItemPosition() >= recyclerView.getAdapter().getItemCount() - 1) { Beam refresh = new Beam(); refresh.execute(createUrl()); } } catch (Exception e) { e.printStackTrace(); } }從右到左的滑動現在工作正常,但不是相反,我在這里缺少什么?
3 回答

楊__羊羊
TA貢獻1943條經驗 獲得超7個贊
如果目標是使RecyclerView模仿行為ViewPager有相當簡單的方法
RecyclerView recyclerView = (RecyclerView) view.findViewById(R.id.recycler_view);
LinearLayoutManager layoutManager = new LinearLayoutManager(context, LinearLayoutManager.HORIZONTAL, false);
SnapHelper snapHelper = new PagerSnapHelper();
recyclerView.setLayoutManager(layoutManager);
snapHelper.attachToRecyclerView(mRecyclerView);
通過使用PagerSnapHelper你可以得到像這樣的行為ViewPager
- 3 回答
- 0 關注
- 1122 瀏覽
添加回答
舉報
0/150
提交
取消