首页 文章

如何删除Android上ListViews之间的行?

提问于
浏览
358

我正在使用两个 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 之间有一个空行 . 我该如何删除它?

12 回答

  • 10

    要删除同一ListView中项目之间的分隔符,以下是解决方案:

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

    developer.android.com # ListView

    或者,如果您想以XML格式执行此操作:

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

    如果这个 android:divider="@null" 不起作用,可能会更改您的ListViews for Recycler Views?

  • 11

    在XML中:

    android:divider="@null"
    

    或者在Java中:

    listView.setDivider(null);
    
  • 0

    对于ListFragment使用

    getListView().setDivider(null)
    

    获得清单后 .

  • 89

    您可以尝试以下方法 . 它对我有用......

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

    我发现在XML文件中实现它更容易,因为在数百行的类中跟踪代码行可能更难 . 对于XML,您可以使用“null”:

    android:divider="@null"
    
  • 25
    • 如果要删除分隔线,请使用以下代码:
    android:divider="@null"
    
    • 如果要添加空格而不是分隔线:
    android:divider="@android:color/transparent"
    android:dividerHeight="5dp"
    

    因此,您可以在divider属性中使用任何drawable或color .

  • 8
    <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"/>
    
  • 6

    或者用XML:

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

    你可以使用一种颜色作为drawable(例如#ff112233),但要注意,早期的蛋糕版本有一个无法设置颜色的错误 . 相反,必须使用9补丁或图像..

  • 10

    您可以在listview标记中放置以下属性

    android:divider="@null"
    

    (或)以编程方式 listview.Divider(null); 这里 listviewListView 参考 .

  • 12

    有不同的方法来实现这一点,但我不确定哪一个是最好的(我甚至不知道有一个最好的方法) . 我知道在ListView中至少有两种不同的方法:

    1. Set divider to null:

    1.1 . 编程

    yourListView.setDivider(null);
    

    1.2 . XML

    这包含在ListView元素中 .

    android:divider="@null"
    

    2. Set divider to transparent and set its height to 0 to avoid adding space between listview elements:

    2.1 . 编程方式:

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

    2.2 . XML

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

    将分隔符设置为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"
      />
    

相关问题