某些ListView项目下的黑线

时间:2010-11-27 06:01:08

标签: android listview divider

有趣的问题我正在使用ListView。它使用标准的ArrayAdapter,并为其中的项目提供自定义XML布局。简单的XML:

<?xml version="1.0" encoding="utf-8"?>
<TextView
    xmlns:android="http://schemas.android.com/apk/res/android"
    android:id="@android:id/text1"
    android:background="@drawable/list_bg_blue"
    android:layout_width="fill_parent"
    android:layout_height="wrap_content"
    android:paddingTop="20dp"
    android:paddingBottom="20dp"
    android:typeface="serif"
    android:textSize="20px"
    android:textStyle="bold|italic" 
    android:textColor="#FF1e5a82"
    android:shadowColor="#FFFFFFFF"
    android:shadowDx="1"
    android:shadowDy="1"
    android:shadowRadius="1"
/>

我不认为那里有任何问题,但我有一些奇怪的黑线出现,我似乎无法摆脱(你可以在下面的图片中看到它)。我尝试在ListView中设置android:dividerHeight="0px",但这些仍然出现。您可以在New Episodes和Shows之间看到没有线,但由于某种原因,在第一个和最后一个之后。

有什么想法吗?

编辑:做了一些更多的思考,似乎只是第一个也是最后一个,所以我找到了:

android:headerDividersEnabledandroid:footerDividersEnabled

将页脚设置为false会修复最后一个,但奇怪的是将标题分隔符设置为false无效。 :/

甚至更多编辑!:好的,所以我在列表中添加了一些项目(应该先完成),它似乎是所有其他项目(例如项目1,项目3,项目5等等) )它下方有一个分隔物。

Lines on ListView

3 个答案:

答案 0 :(得分:42)

你可以说

<ListView
    ...
    android:divider="@null"
    ...
/>

默认情况下,应在每次输入后插入分隔符。

答案 1 :(得分:2)

我讨厌回答我自己的问题,但我找到了解决方案:

ListView lv = getListView();
lv.setDivider(null);

这解决了这个问题。不过,我仍然想知道用XML做到这一点的方法,并理解为什么它只在每个其他项目中插入它们。

答案 2 :(得分:0)

你可以在xml中设置它:android:divider =“@ null”