2

リニア レイアウト マネージャーを使用して、recyclerview の位置までスムーズにスクロールしようとしています。

void smoothScrollToPosition(int position)

ただし、常に正しく機能するとは限りません。リストの一番下に移動し、ログに次のエラー メッセージが表示されることがあります。

Passed over target position while smooth scrolling

SOでこのスレッドを見つけました。ただし、答えはエラーが発生する理由を説明していません。問題を回避するための解決策があります。私はかなり長い間これを理解しようとしてきました。このエラーがいつスローされるかを誰かが説明できますか?

4

1 に答える 1

0

smoothScrollToPositionバックグラウンド スレッドでを呼び出してみてください。を使用しrecyclerView.post()ます。アダプターがビジー状態の場合、アイテム ビューを生成するときにアダプターがデータを見逃す可能性があると思います。

于 2021-12-06T06:05:36.463 に答える