"यदि कोई कर्मचारी अपना काम अच्छी तरह से करना चाहता है, तो उसे पहले अपने औजारों को तेज करना होगा।" - कन्फ्यूशियस, "द एनालेक्ट्स ऑफ कन्फ्यूशियस। लू लिंगगोंग"
मुखपृष्ठ > प्रोग्रामिंग > हेडर और फ़ुटर्स को एक रिसाइक्लव्यू में कैसे जोड़ें?

हेडर और फ़ुटर्स को एक रिसाइक्लव्यू में कैसे जोड़ें?

2025-03-24 को पोस्ट किया गया
ब्राउज़ करें:350

] यह अतिरिक्त जानकारी या नेविगेशन तत्व प्रदान करके उपयोगकर्ता अनुभव को बढ़ाता है। उदाहरण के लिए, प्रदान किए गए कोड स्निपेट में, निम्न पंक्तियाँ एक हेडर जोड़ती हैं:

How to add Headers and Footers to a RecyclerView? 
लेआउटिनफ्लेटर inflater = (LayoutInflater) getActivity ()। getSystemService (संदर्भ। हेडरप्लेसहोल्डर = inflater.inflate (r.layout.view_header_holder_medium, null, false); LayouManager.addview (हेडरप्लेसहोल्डर, 0); इसलिए, यह दृष्टिकोण मानता है कि आपके पास एक कस्टम LayoutManager है जो हेडर जोड़ने का समर्थन करता है। हालाँकि, AddView () का उपयोग करने के बजाय, आप AddFooterview () का उपयोग कर सकते हैं या एक कस्टम एडाप्टर बना सकते हैं जो पाद और सामान्य वस्तुओं को संभालता है। एडाप्टर तब हेडर और फुटर सहित आइटमों की सही संख्या को वापस कर सकता है, और हेडर और पाद लेखों को onCreateViewHolder () विधि में फुला सकता है। एक उदाहरण कार्यान्वयन:

// पाद दृश्य प्रकार के लिए एक स्थिरांक को परिभाषित करें निजी स्थिर अंतिम int footer_view = 1; // onCreateViewHolder () विधि को ओवरराइड करें @Override public recyclerview.Viewholder onCreateViewHolder (ViewGroup माता -पिता, int viewtype) { if (viewType == footer_view) { // पाद के दृश्य को फुलाएं Footerview = LayoutInflater.from (संदर्भ) देखें। नया फ़ुटव्यूहोल्डर (फ़ुटव्यू) लौटाएं; } अन्य { // सामान्य दृश्य को फुलाएं सामान्य देखें = LayoutInflater.from (संदर्भ) .inflate (r.layout.list_item_normal, माता -पिता, गलत); नया NormalViewHolder (NormalView) लौटें; } } // getItemViewType () विधि को ओवरराइड करें @Override सार्वजनिक int getItemViewType (int स्थिति) { if (स्थिति == data.size ()) { // पाद के लिए futor_view प्रकार लौटाएं वापसी पाद_व्यू; } सुपर .getItemViewType (स्थिति) लौटें; … आपको बस अतिरिक्त हेडर और फ़ुटर्स को संभालने के लिए एडाप्टर या कस्टम लेआउटमैनगर को संशोधित करने की आवश्यकता है। उदाहरण के लिए: GridlayoutManager.spansizelookup spansizelookup = new gridlayoutmanager.spansizelookup () {{ @Override पब्लिक इंट गेट्सपेंसेज़ (इंट पोजिशन) { // सामान्य वस्तुओं के लिए 1 रिटर्न, और पाद के लिए कॉलम की संख्या if (स्थिति == data.size ()) { GRIDLAYOUTMANAGER.GETSPANCOUNT () लौटें; } लौटें 1; } }; // स्पैन्सिज़ेलुकअप को ग्रिडलॉएटमैनगर को सेट करें gridlayoutManager.setSpansizelookup (spansizelookup);

नवीनतम ट्यूटोरियल अधिक>

चीनी भाषा का अध्ययन करें

अस्वीकरण: उपलब्ध कराए गए सभी संसाधन आंशिक रूप से इंटरनेट से हैं। यदि आपके कॉपीराइट या अन्य अधिकारों और हितों का कोई उल्लंघन होता है, तो कृपया विस्तृत कारण बताएं और कॉपीराइट या अधिकारों और हितों का प्रमाण प्रदान करें और फिर इसे ईमेल पर भेजें: [email protected] हम इसे आपके लिए यथाशीघ्र संभालेंगे।

Copyright© 2022 湘ICP备2022001581号-3