2017-10-13 5 views
-3

Recyclerviewでスクロールすると、複数のカードをスクロールするよりも速くスクロールするときのカードビューのデフォルトのリストが表示されます。スクロール量をどれだけスクロールするかは、私はグーグルだが、解決策を得ていない。
私のコードを支援するためのおかげでMyRecyclerViewとLinearLayoutManagerあなたはリサイクル画面の上部に表示する選択した項目を移動するには、このラインlinearLayoutManager.Useのオブジェクトを使用することによって、これを達成することができ、次の行にRecyclerviewの次のカードビューのみをスクロールします。

MyRecyclerView = (RecyclerView) view.findViewById(R.id.cardView); 
MyRecyclerView.setHasFixedSize(true); 
LinearLayoutManager MyLayoutManager = new LinearLayoutManager(getActivity()); 
    MyLayoutManager.setOrientation(LinearLayoutManager.VERTICAL); 
    if (listitems.size() > 0 & MyRecyclerView != null) { 
     MyRecyclerView.setAdapter(new MyAdapter(listitems)); 
    } 
    MyRecyclerView.setLayoutManager(MyLayoutManager); 
+3

に依存しますか? –

答えて

0

1.あなたはsmoothScrollToPosition(int position)

アダプタの位置にスムーズスクロールを開始しますを使用する必要があります。特定の位置にスクロールする

recyclerview.smoothScrollToPosition(position); 

2.使用scrollToPosition()

void scrollToPosition (int position)

簡易方法。 RecyclerViewはむしろ

RecyclerView.scrollToPosition(postion) 

3.rv.getLayoutManager().scrollToPosition(youPositionInTheAdapter).

4.scrollToPositionWithOffset()

void scrollToPositionWithOffset (int position,int offset)

に電話を転送し、スクロールロジックを実装していません。

解決されたレイアウト開始からのオフセットを指定して、指定されたアダプタ位置までスクロールします。解決済みレイアウト開始はgetReverseLayout()getLayoutDirection(android.view.View)とあなたが達成しようとしているものを実際にgetStackFromEnd().

linearLayoutManager.scrollToPositionWithOffset(1, 10); 
関連する問題