दृष्टिकोण नीचे उल्लेख प्रयास करें ..
एंड्रॉयड ListView#addHeaderView
और ListView#addFooterView
: मेरे MergeAdapter अपने विशिष्ट मामले को संभाल नहीं करते हैं, आप कई पंक्ति सूत्रों सम्मिश्रण की अवधारणा को देखने के लिए उपयोग कर सकते हैं विधियां अजीब हैं: आपको सूची दृश्य के एडाप्टर को सेट करने से पहले हेडर और पाद लेख दृश्य जोड़ना होगा ताकि सूची दृश्य शीर्षलेख और पाद लेखों को ध्यान में रख सके - आपको अन्यथा अपवाद मिलता है। यहाँ हम headerView के रूप में एक ProgressBar (स्पिनर) जोड़ें:
// स्पिनर एक ProgressBar है
listView.addHeaderView(spinner);
हम दिखा सकते हैं और इच्छा पर है कि स्पिनर को छिपाने के लिए सक्षम होने के लिए चाहते हैं, लेकिन दूर करने में यह एकमुश्त है
listView.removeHeaderView(spinner); //dangerous!
तो चलो इसे छिपाने करते हैं: - खतरनाक है क्योंकि हम कभी नहीं ListView को नष्ट किए बिना फिर से जोड़ने के लिए सक्षम होगा याद है, हम addHeaderView नहीं कर सकता यह एडाप्टर है हम करने के बाद! यह भी मुश्किल है, यह भी मुश्किल है। सिर्फ स्पिनर दृश्य को छिपाने के परिणामस्वरूप एक खाली, लेकिन फिर भी दिखाई देने वाला, हेडर क्षेत्र होता है।
अब स्पिनर छिपाने की कोशिश: अभी भी एक बदसूरत अंतरिक्ष के साथ दिखाई दे हेडर क्षेत्र:
समाधान प्रगति डाल करने के लिए है
spinner.setVisibility(View.GONE);
परिणाम एक लीनियरआउट में बार जो इसकी सामग्री को लपेटता है, और सामग्री को छुपाता है।इस तरह रैपिंग LinearLayout पतन होगा जब इसकी सामग्री एक headerView तकनीकी रूप से अभी भी मौजूद है कि जिसके परिणामस्वरूप, छिपा हुआ है, लेकिन 0dip उच्च:
spinnerLayout = getLayoutInflater().inflate(R.layout.header_view_spinner, null);
listView.addHeaderView(spinnerLayout);
:
<LinearLayout
xmlns:a="http://schemas.android.com/apk/res/android"
android:orientation="vertical"
android:layout_width="fill_parent"
android:layout_height="wrap_content">
<!-- simplified -->
<ProgressBar
android:id="@+id/spinner"
android:layout_width="wrap_content"
android:layout_height="wrap_content"/>
</LinearLayout>
फिर, हेडर के रूप में लेआउट सेट और जब हम इसे छिपाने के लिए की जरूरत है, लेआउट की सामग्री छुपाने के लिए, नहीं लेआउट:
spinnerLayout.findViewById(R.id.spinner).setVisibility(View.GONE);
अब हैडर दृश्य से गायब हो जाता है। शीर्ष पर कोई और बदसूरत जगह नहीं!
आप शीर्ष लेख दृश्य को हटाने के लिए यदि आप, शीर्ष लेख इस लिंक को देखने के लिए बात करने के लिए एक चर हो सकता है: http://stackoverflow.com/a/39286390/1817569 – Hamid