bu. Ben RecycleView adaptörünün OnBindViewHolder
yöntemdeÖlçekleme RecyclerView madde aşağıda gibi RecyclerView ulaşmak için çalışıyorum pozisyon
view.setScaleX(scaleFactor); view.setScaleY(scaleFactor);
aramaya çalıştım ve ayrıca ItemDecorator ama listenin her zaman davranışı beklenmedik oldu. Bunu başarmak için en iyi yaklaşım nedir? PagerAdapter veya başka bir kontrol ile olabilir.
UPD: ölçekleme faktörü, öğenin adaptördeki konumuna bağlıdır ve kaydırma sırasında değiştirilmemelidir. UPD2
: İşte Ben OnBoundViewHolder denedim kod şudur:
int childCount = recyclerView.getChildCount();
View view = holder.getView();
if (position == childCount){
view.setScaleX(1f);
view.setScaleY(1f);
} else if (position == childCount - 1){
view.setScaleX(0.8f);
view.setScaleY(0.8f);
} else if (position == childCount - 2){
view.setScaleX(0.6f);
view.setScaleY(0.6f);
}
else {
view.setScaleX(0.4f);
view.setScaleY(0.4f);
}
Ve burada sonucudur (ve kaydırma ederken değişiyor):
Ve aynı kod ancak ItemDecorator getItemOffsets
:
Terazi, öğenin adaptördeki konumuna bağlı mı? Veya listedeki öğenin kaydırma konumu? –
Listede bunun için bir şeyler yazdım. Burada bir göz atabilir ve size yardımcı olup olmadığına bakın. Http://stackoverflow.com/a/26000069/3410697 –
Evet, ölçek adaptördeki konuma bağlıdır. Son madde her zaman ölçek faktör 1, son - 1 faktör 0.8f, son - 2 faktör 0.6 ve diğerleri 0.4 f'dir. Ölçek –