RecyclerView और ListView के बीच 8 अंतर
1. ViewHolder पैटर्न
इस्तेमाल किया पद्धति के लिए कॉल को कम करने के findViewById () तरीकों।
ListView में, आप ViewHolder का उपयोग किए बिना आसानी से एक सूची बना सकते हैं। लेकिन RecyclerView के मामले में नहीं।
2. अडॉप्टर
ये दोनों ही AdapterViews हैं, हाँ। यह एडेप्टर क्लास के आधार पर काम करता है।
ArrayAdapter, CursorAdapter जैसे डिफ़ॉल्ट एडेप्टर का उपयोग करके ListView का निर्माण करना आसान है, लेकिन एक नया कस्टम एडाप्टर क्लास बनाने के लिए RecyclerView RecyclerView.Adcape क्लास प्रदान करता है।
आप RecrelerView के साथ ArrayAdapter या किसी अन्य अंतर्निहित एडेप्टर का उपयोग नहीं कर सकते।
3. आइटम की व्यवस्था
मैंने सरल और कम कोड में वर्टिकल लिस्ट व्यू बनाया है। लेकिन क्या होगा अगर हमें एक GridView बनाने की आवश्यकता है?
RecyclerView अपने आइटम को व्यवस्थित करने के लिए LayoutManager का उपयोग करता है। 3 लेआउटमैन क्लास हैं।
- LinearLayoutManager - रैखिक प्रकार की सूची बनाने में मदद करता है।
- GridLayoutManager - ग्रिड बनाने के लिए उपयोग किया जाता है।
- StaggeredGridLayoutManager - चौंका देने वाला बनाने के लिए उपयोग किया जाता है।
एनिमेशन
सूची दृश्य में मूलभूत एनिमेशन का अभाव है। लेकिन RecyclerView सरल एनिमेशन के साथ आता है।
डिवाइडर
एंड्रॉयड: विभक्त और एंड्रॉयड: dividerHeight विशेषताओं या setDivider (), setDividerHeight () आप ListView में कस्टम विभक्त बनाने के लिए मदद करता है।
25.1.0 के बाद से, आप एक सरल विभक्त बनाने के लिए DividerItemDecoration वर्ग का उपयोग कर सकते हैं ।
ईवेंट पर क्लिक करें
RecyclerView में OnItemClickListener का अभाव है , हाँ यह बहुत दुखद है। लेकिन वे डेवलपर को RecyclerView.OnItemTouchListener प्रदान करके अधिक नियंत्रण देते हैं ।
विधियाँ सूचित करें
आपको सही एनिमेशन करने के लिए उचित सूचना * विधियों को कॉल करने की आवश्यकता है। सूची दृश्य के साथ तुलना करने पर RecylcerView में बहुत सारी सूचनाएँ * विधियाँ हैं।