मैं Android पर ListViews के बीच की पंक्तियों को कैसे निकालूं?


401

मैं ListViewइस तरह से दो का उपयोग कर रहा हूँ :

<ListView
   android:id="@+id/ListView"
   android:text="@string/Website"
   android:layout_height="30px"
   android:layout_width="150px"
   android:scrollbars="none"
   android:transcriptMode="normal"/>
<ListView
   android:id="@+id/ListView1"
   android:text="@string/Website"
   android:layout_height="30px"
   android:layout_width="150px"
   android:scrollbars="none"
   android:transcriptMode="normal"/>

दोनों ListViewएस के बीच एक खाली लाइन है । मेरे द्वारा इसे कैसे दूर किया जाएगा?


3
क्या आपके पास अलग-अलग सूचियाँ दिखाने वाले दो अलग-अलग सूची दृश्य हैं या क्या आपका मतलब है कि आपके सूची दृश्य में आइटमों के बीच एक रेखा है?
डेव वेब

क्या यह "रिक्त" या "ब्लैक" लाइन है? चूंकि प्रश्न ओपी के अलावा किसी और द्वारा संपादित किया गया था। उन लोगों के बीच अंतर है
miva2

1
@ दीप्ति, क्या आप किसी एक उत्तर को मानने पर विचार करेंगे?
अकट

जवाबों:


926

समान ListView में आइटम के बीच विभाजक को हटाने के लिए, यहां समाधान है:

getListView().setDivider(null);
getListView().setDividerHeight(0);

developer.android.com # सूची दृश्य

या, यदि आप इसे XML में करना चाहते हैं:

android:divider="@null"
android:dividerHeight="0dp"

2
किसी कारण के लिए, इसे XML में सेट करना मेरे लिए काम नहीं करता था। इसे कोड में सेट करना था।
जेफरी बट्टमैन

8
मेरे लिए XML में काम किया। <ListView> </ Listview> में डालना चाहिए। आश्चर्य है कि इसे सही उत्तर के रूप में क्यों स्वीकार नहीं किया गया।
3

1
क्या हमें दोनों को बनाने (शून्य करने और शून्य करने) की आवश्यकता है या केवल एक ही पर्याप्त है?
बंदूकधारी

3
@Pranav। कृपया शिक्षक, आइए प्रोग्रामिंग के बारे में लिखें। धन्यवाद।
गेलट्रूड

1
अजीब तरह से केवल डिवाइडरहाइट = 0 काम नहीं किया, केवल डिवाइडर = @ नल ने किया। क्यों?
चिंतन शाह

96
  1. यदि आप एक विभक्त रेखा निकालना चाहते हैं, तो इस कोड का उपयोग करें:

    android:divider="@null"
  2. यदि आप एक विभक्त रेखा के बजाय एक स्थान जोड़ना चाहते हैं:

    android:divider="@android:color/transparent"
    android:dividerHeight="5dp"

तो, आप विभक्त विशेषता में किसी भी चित्र या रंग का उपयोग कर सकते हैं।


65

इसे प्राप्त करने के अलग-अलग तरीके हैं, लेकिन मुझे यकीन नहीं है कि कौन सा सबसे अच्छा है (मुझे नहीं पता कि एक सबसे अच्छा तरीका है)। मैं सूची में यह करने के लिए कम से कम दो अलग-अलग तरीके जानता हूं:

1. सेट डिवाइडर शून्य करने के लिए:

1.1। प्रोग्राम के रूप में

yourListView.setDivider(null);

1.2। एक्सएमएल

यह आपके ListView तत्व के अंदर चला जाता है।

android:divider="@null"

2. विभेदक तत्वों के बीच स्थान जोड़ने से बचने के लिए पारदर्शी से विभाजक सेट करें और इसकी ऊँचाई को 0 पर सेट करें:

2.1। प्रोग्राम के रूप में:

yourListView.setDivider(new ColorDrawable(android.R.color.transparent));
yourListView.setDividerHeight(0);

2.2। एक्सएमएल

android:divider="@android:color/transparent"
android:dividerHeight="0dp"

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


20

विभाजक को शून्य पर सेट करें:

जावा

  listview_id.setDivider(null);

एक्सएमएल

<ListView 
  android:id="@+id/listview"
  android:layout_width="match_parent"
  android:layout_height="match_parent"
  android:divider="@null"
  />

15
   <ListView xmlns:android="http://schemas.android.com/apk/res/android"
  android:id="@+id/list"
  android:orientation="vertical"
  android:layout_width="match_parent"
  android:layout_height="match_parent"
  android:divider="@null"
  android:dividerHeight="0dp"/>

1
हालांकि यह कोड प्रश्न का उत्तर दे सकता है, लेकिन समस्या को हल करने के तरीके के बारे में अतिरिक्त संदर्भ प्रदान करता है और यह समस्या को हल करता है ताकि उत्तर के दीर्घकालिक मूल्य में सुधार हो सके।
डोनाल्ड डक

12

आप सूची टैग में संपत्ति के नीचे रख सकते हैं

android:divider="@null"

(या) प्रोग्राम के रूप में listview.Divider(null); यहाँ listviewहै ListViewसंदर्भ।


10

या एक्सएमएल में:

android:divider="@drawable/list_item_divider"
android:dividerHeight="1dp"

आप ड्रा करने योग्य (जैसे # ff112233) के लिए एक रंग का उपयोग कर सकते हैं, लेकिन ध्यान रहे, प्री-कपकेक रिलीज़ में एक बग होता है जिसमें रंग सेट नहीं किया जा सकता है। इसके बजाय एक 9-पैच या एक छवि का उपयोग किया जाना चाहिए।


या आप डिवाइडर के लिए मानक एंड्रॉइड @android:drawable/divider_horizontal_...
ड्रॉबल का

9

आप निम्नलिखित की कोशिश कर सकते हैं। इसने मेरे लिए काम किया ...

android:divider="@android:color/transparent"
android:dividerHeight="0dp" 

7

मुझे इसे एक्सएमएल फ़ाइल में लागू करना आसान लगता है क्योंकि सैकड़ों लाइनों वाली कक्षा में कोड की रेखा का पता लगाना कठिन हो सकता है। XML के लिए आप "null" का उपयोग कर सकते हैं:

android:divider="@null"


0

यदि यह android:divider="@null"काम नहीं करता है, तो शायद पुनर्नवीनीकरण दृश्य के लिए अपना ListViews बदल रहा है? 

हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.