शायद एक बेहतर तरीका है, लेकिन मैं इस पर ठोकर खाई। आप रीसाइक्लर व्यू के साथ देरी-स्लाइड-इन प्रभाव को प्राप्त कर सकते हैं, और ऑनबिंडव्यूहोल्डर विधि में एनीमेशन सेट कर सकते हैं।
नीचे दिया गया कोड "दिखाई देने पर रीसाइक्लिंग व्यू आइटम पर एनीमेशन सेट करने के तरीके से अनुकूलित किया गया है।" मैंने इसे स्थिति के आधार पर एनीमेशन को छेड़छाड़ करने के लिए अनुकूलित किया। शुरुआती दृश्यमान दृश्यों के लिए सभी पदों के बाद सेट एनीमेशन विधि को कॉल करने से रोकने के लिए आपको तर्क की भी आवश्यकता होगी, जब तक कि आप उन्हें बाएं से स्लाइड करने के लिए उपयोगकर्ता स्क्रॉल के रूप में स्लाइड करना चाहते हैं।
How to animate RecyclerView items when they appear (अनुकूलित)
@Override
public void onBindViewHolder(ViewHolder holder, int position)
{
holder.text.setText(items.get(position));
// Here you apply the animation when the view is bound
setAnimation(holder.container, position);
}
/**
* Here is the key method to apply the animation
*/
private void setAnimation(View viewToAnimate, int position)
{
Context context = MyApp.getActivity();
Animation animation = AnimationUtils.loadAnimation(context, android.R.anim.slide_in_left);
animation.setDuration(position * 50 + 200);
viewToAnimate.startAnimation(animation);
}
बहुत अधिक बार देखा एनिमेट btw बहुत अस्थिर हो सकता है। अंतराल-देरी बढ़ाना स्क्रीन से अधिक छोड़ देता है जबकि पहले एनिमेटिंग होते हैं। आप कुछ एनीमेशन (डिफ़ॉल्ट एंड्रॉइड एक के अलावा) को ढूंढने का प्रयास कर सकते हैं जो उन्हें स्क्रीन से अधिक छोड़ देगा (उदा। रोकें, फिर आगे बढ़ें या तेज करें), ताकि आप स्क्रीन पर एनिमेटेड होने पर कितने विचारों को बेहतर ढंग से नियंत्रित कर सकें।
यह समाधान काम करता है या कम से कम मुझे एक प्रारंभिक बिंदु देता है। धन्यवाद – tintin21