How do I remove lines between ListViews on Android?
I'm using two ListView
s like this:
<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"/>
There is one blank line between the two ListV开发者_JAVA技巧iew
s. How do I remove it?
To remove the separator between items in the same ListView, here is the solution:
getListView().setDivider(null);
getListView().setDividerHeight(0);
developer.android.com # ListView
Or, if you want to do it in XML:
android:divider="@null"
android:dividerHeight="0dp"
If you want to remove a divider line, use this code:
android:divider="@null"
If you want to add a space instead of a divider line:
android:divider="@android:color/transparent" android:dividerHeight="5dp"
So, you can use any drawable or color in the divider attribute.
There are different ways to achieve this, but I'm not sure which one is the best (I don't even know is there is a best way). I know at least two different ways to do this in a ListView:
1. Set divider to null:
1.1. Programmatically
yourListView.setDivider(null);
1.2. XML
This goes inside your ListView element.
android:divider="@null"
2. Set divider to transparent and set its height to 0 to avoid adding space between listview elements:
2.1. Programmatically:
yourListView.setDivider(new ColorDrawable(android.R.color.transparent));
yourListView.setDividerHeight(0);
2.2. XML
android:divider="@android:color/transparent"
android:dividerHeight="0dp"
Set divider to null:
JAVA
listview_id.setDivider(null);
XML
<ListView
android:id="@+id/listview"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:divider="@null"
/>
In XML:
android:divider="@null"
Or in Java:
listView.setDivider(null);
<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"/>
You can put below property in listview tag
android:divider="@null"
(or)
programmatically listview.Divider(null);
here listview
is ListView
reference.
Or in XML:
android:divider="@drawable/list_item_divider"
android:dividerHeight="1dp"
You can use a color for the drawable (e.g. #ff112233), but be aware, that pre-cupcake releases have a bug in which the color cannot be set. Instead a 9-patch or a image must be used..
You can try the following. It worked for me...
android:divider="@android:color/transparent"
android:dividerHeight="0dp"
I find it easier to implement it in the XML file as it can be harder to trace the line of code in a class with hundreds of lines. For the XML you can use "null":
android:divider="@null"
For ListFragment use
getListView().setDivider(null)
after the list has been obtained.
If you want to remove lines from
⛔ Problem
Having lines between items from <ListView>
✅ Solution
add an attribute android:drivider="@null"
If this android:divider="@null"
doesn't work, maybe changing your ListViews for Recycler Views?
String txt = ( (TextView) view).getText().toString();
adapter.remove(txt);
精彩评论