वर्तमान परिदृश्य detachesRecyclerView दृश्य अभी भी दिखाई दे
मैं एक RecyclerView पर एक लंबन प्रभाव को प्राप्त करने के लिए इस पुस्तकालय https://github.com/kanytu/android-parallax-recyclerview उपयोग कर रहा हूँ। अब तक सब ठीक है. हालांकि मैं Google न्यूजस्टैंड जैसे प्रभाव प्राप्त करना चाहता हूं जहां हेडर अभी भी कार्ड को बोल्ड कर रहा है।
के रूप में:
समस्या
समस्या यह है कि RecyclerView (या LinerLayoutManager) शीर्षक पल सूची के पहले तत्व छू लेती है माता पिता दृश्य के शीर्ष देखने detaches है आप पल देख सकते हैं कि पहला कार्डव्यू शीर्ष पर छूता है पल रीसाइक्लर व्यू हेडर को अलग करता है।
मुझे यकीन है कि तर्क पर कोई समस्या नहीं है, जब कार्ड शीर्ष पर पहुंचता है तो मुझे RecyclerView.findViewHolderForPosition(0) == null
मिलता है। यह प्रदान करना कि हेडर रीसाइक्लिंग किया गया है। इस पद्धति का उपयोग धारक सेट करने के लिए recycler नहीं कोई असर नहीं करता है के लिए
की कोशिश की समाधान
मैं की तरह बहुत सी बातें की कोशिश की।
LayoutManager.ignoreView मैंने स्कैपिंग और रीसाइक्लिंग से अनदेखा करने के लिए दृश्य को चिह्नित करने का प्रयास किया। परिणाम एक अपवाद कह रहा था: Trying to recycle an ignored view holder. You should first call stopIgnoringView(view) before calling recycle.
setItemViewCacheSize कुछ भी नहीं करता है। setItemViewCacheSize(50)
पर कॉल करने का प्रयास किया और यह हेडर को कुछ भी नहीं करता है।
setMaxRecycledViews रीडसाइक्ड दृश्यों के अधिकतम दृश्य को टाइपटाइप = हेडर से 0 पर सेट करने का प्रयास किया और यह अभी भी इसे पुन: उपयोग करता है।
निष्कर्ष
तो मैं सवाल अगर वहाँ वैसे भी है के लिए अलग हो रही है नहीं आइटम चिह्नित करने के लिए जब तक मैं इतना आदेश (जाँच की तरह अगर यह अभी भी दिखाई दे रहा है और फिर इसे अलग)।
वहाँ भी इसके बारे में GitHub पर एक मुद्दा है: https://github.com/kanytu/android-parallax-recyclerview/issues/7
करता है 'यह प्रभावित setItemViewCacheSize'? https://developer.android.com/reference/android/support/v7/widget/RecyclerView.html#setItemViewCacheSize(int) – darnmason
@ डर्नमसन संख्या। इसका कोई प्रभाव नहीं प्रतीत होता है। न तो 'getRecycledViewPool() है। SetMaxRecycledViews() ' –
मुझे लगता है कि यह लेआउटमैनेजर का काम है, न कि रीसाइक्लर व्यू, शायद आपको एक कस्टम की आवश्यकता होगी जो पहले आइटम को कभी भी अलग न करे। – darnmason