RecyclerView’da itemların yüksekliği ilk item’ın yüksekliğine göre belirleniyorsa ve bu yüzden sorun yaşıyorsanız aşağıdaki çözüm işinize yarayacaktır. Bu çözümde LinearLayoutManager’ın ölçüm önbelleğini devre dışı bırakıyoruz ve her scroll yapıldığında ui’ı tekrar çağırıyoruz. Bu sayede sorun çözülüyor.
LinearLayoutManager layoutManager = new LinearLayoutManager(context, LinearLayoutManager.HORIZONTAL, false);
layoutManager.setMeasurementCacheEnabled(false);
YourRecyclerView.setLayoutManager(layoutManager);
YourRecyclerView.addOnScrollListener(new RecyclerView.OnScrollListener() {
@Override
public void onScrolled(@NonNull RecyclerView recyclerView, int dx, int dy) {
super.onScrolled(recyclerView, dx, dy);
layoutManager.requestLayout();
}
});