Я сделал три бесконечности RecyclerView (100, 60, 60 элементов):
public int getItemCount() {
return Integer.MAX_VALUE;
}
Теперь я хочу получить значение элемента из этого представления. И для RecyclerView на 100 элементов это просто, но я не понимаю, как сделать это для RecyclerView на 60 элементов. Я сделал метод в адаптере, например:
public String get(int position) {
return hours.get(position).hour;
}
Вот для 100:
hours.addOnScrollListener(new RecyclerView.OnScrollListener() {
@Override
public void onScrollStateChanged(@NonNull RecyclerView recyclerView, int newState) {
super.onScrollStateChanged(recyclerView, newState);
if (newState == recyclerView.SCROLL_STATE_IDLE) {
View centerView = snapHelper.findSnapView(linearLayoutManager);
int pos = linearLayoutManager.getPosition(centerView);
String val = recyclerAdapter.get(pos % 100);
Log.e("Snapped Item Position:","" + val);
}
}
});
Может быть, есть лучший способ получить значения элементов из бесконечности RecyclerView?
Здесь вы можете проверить проект на GitHub: InfinityRecycler