Я делаю GA. и нужно определить видимость элемента в представлении рециркулятора, и я использую метод onViewAttachedToWindow из RecyclerView.Adapter. Это правильный путь? и это нормально с linearlayoutmanager, поведение которого подобно документу. И есть проблема при использовании StaggeredGridLayoutManager, он вызовет onViewAttachedToWindow, даже если элемент не виден. и я пытаюсь использовать слушатель scollchange после поиска в stackoverflow, что является той же проблемой. Как я могу определить, что элемент виден на экране.
Ниже приведен мой вид переработчика:
<androidx.recyclerview.widget.RecyclerView xmlns:app="http://schemas.android.com/apk/res-auto"
android:id="@+id/more_recycler_view"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:nestedScrollingEnabled="false"
android:orientation="vertical"
app:layoutManager="androidx.recyclerview.widget.StaggeredGridLayoutManager"
app:spanCount="2" />
, и я пытаюсь обнаружить видимый элемент следующим способом:
@Override
public void onViewAttachedToWindow(@NonNull SuggestViewHolder holder) {
super.onViewAttachedToWindow(holder);
int i = holder.getAdapterPosition();