2015-03-22 10 views
7

मैं एंड्रॉइड के लिए नया हूं। मुझे एंड्रॉइड नेविगेशन ड्रॉवर के बारे में कोई समस्या है। मैंने अपने ऐप में नेविगेशन ड्रॉवर शामिल किया सब कुछ ठीक हो गया लेकिन मैं सोच रहा था कि कोई भी नेविगेशन ड्रॉवर सूची पर आलसी एनीमेशन पाने में मेरी मदद कर सकता है।नेविगेशन ड्रॉवर एनिमेशन एंड्रॉइड

navigation drawer with animation

Source of the image

धन्यवाद।

उत्तर

2

शायद एक बेहतर तरीका है, लेकिन मैं इस पर ठोकर खाई। आप रीसाइक्लर व्यू के साथ देरी-स्लाइड-इन प्रभाव को प्राप्त कर सकते हैं, और ऑनबिंडव्यूहोल्डर विधि में एनीमेशन सेट कर सकते हैं।

नीचे दिया गया कोड "दिखाई देने पर रीसाइक्लिंग व्यू आइटम पर एनीमेशन सेट करने के तरीके से अनुकूलित किया गया है।" मैंने इसे स्थिति के आधार पर एनीमेशन को छेड़छाड़ करने के लिए अनुकूलित किया। शुरुआती दृश्यमान दृश्यों के लिए सभी पदों के बाद सेट एनीमेशन विधि को कॉल करने से रोकने के लिए आपको तर्क की भी आवश्यकता होगी, जब तक कि आप उन्हें बाएं से स्लाइड करने के लिए उपयोगकर्ता स्क्रॉल के रूप में स्लाइड करना चाहते हैं।

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 बहुत अस्थिर हो सकता है। अंतराल-देरी बढ़ाना स्क्रीन से अधिक छोड़ देता है जबकि पहले एनिमेटिंग होते हैं। आप कुछ एनीमेशन (डिफ़ॉल्ट एंड्रॉइड एक के अलावा) को ढूंढने का प्रयास कर सकते हैं जो उन्हें स्क्रीन से अधिक छोड़ देगा (उदा। रोकें, फिर आगे बढ़ें या तेज करें), ताकि आप स्क्रीन पर एनिमेटेड होने पर कितने विचारों को बेहतर ढंग से नियंत्रित कर सकें।

+0

यह समाधान काम करता है या कम से कम मुझे एक प्रारंभिक बिंदु देता है। धन्यवाद – tintin21

संबंधित मुद्दे