4

Recyclerビューに画像のリストがあり、リサイクルビューをスクロールするとonBindViewHolderが呼び出されます。RecyclerビューをスクロールするときにonBindViewHolderを呼び出す

リサイクラビューをスクロールして、現在表示されているイメージの位置を取得できるようにするときに、もう一度onBindViewHolderを呼び出す必要があります。

もう一度onBindViewHolderを呼び出す方法(スクロールアップ時)?

+0

申し訳ありませんが、これはStackOverflowの仕組みではありません。 "私はXをしたい、私にヒントやサンプルコードを教えてください"という形式の質問は、話題とはみなされません。 [ヘルプセンター](http://stackoverflow.com/help)にアクセスし、[How to Ask](http://stackoverflow.com/help/how-to-ask)を読んでください。特に[Why is [誰かが私を助けることができますか?」実際の質問ではありませんか?](http://meta.stackoverflow.com/questions/284236/why-is-can-someone-help-me-not-an-actual-question) – bc004346

答えて

2

リサイズビューにスクロールリスナーを追加することはできますが、dyスクロールが負の場合は、adapter.notifyDataSetChangedを呼び出すことができます。したがって、onBindViewHolderが再度呼び出されます

mFragmentListBinding.movieGrid.addOnScrollListener(new RecyclerView.OnScrollListener() { 
      @Override 
      public void onScrolled(RecyclerView recyclerView, int dx, int dy) { 
       super.onScrolled(recyclerView, dx, dy); 
       if (dy < 0) { 
        mAdapter.notifyDataSetChanged(); 
       } 
      } 
     }); 
+0

現在表示されている画像を把握するにはどうすればよいでしょうか? –

+0

あなたのレイアウトには同時にいくつのビューが表示されますか?レイアウトマネージャには、layoutManager.findLastVisibleItemPosition()とlayoutManager.findFirstVisibleItemPosition()の2つのメソッドも用意されているため、 –

+0

レイアウト内に同時に2つのビューが表示されます。 –

関連する問題