RecyclerView
に特定のアイテムが表示されているかどうかを確認しようとしています。しかし、私はそれを実装することができませんでした。アイテムがRecyclerView
に完全に表示されているかどうかを判断するのを手伝ってください。
mrecylerView.addOnScrollListener(new RecyclerView.OnScrollListener() {
@Override
public void onScrolled(RecyclerView recyclerView, int dx, int dy) {
super.onScrolled(recyclerView, dx, dy);
LinearLayout ll = (LinearLayout) recyclerView.findChildViewUnder(dx, dy);
if (ll != null) {
TextureVideoView tvv = (TextureVideoView) ll.findViewById(R.id.cropTextureView);
}
}
});
tvv
ビューがmrecyclerView
ビュー内に完全に表示されているかどうかを確認したいと思います。
LayoutManager APIを使用してロジックを作成し、RecyclerViewonScrolledメソッドで最後に完全に表示されるアイテムの位置を取得できます。
((LinearLayoutManager) vYourRecycler.getLayoutManager()).findLastCompletelyVisibleItemPosition();
ドキュメントから:最後に完全に表示されたビューのアダプター位置を返します。この位置には、最後のレイアウトパスの後にディスパッチされたアダプターの変更は含まれません。
それを使用して、RecyclerViewアダプターに更新するように通知してください。
注:onScrolledメソッドでfindViewByIdを使用している理由がわかりません。この作業は、パフォーマンスのためにRecyclerViewViewHolderに実装する必要があります。