某些ListView项下面有黑线

19

我遇到了一个有趣的问题,涉及到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个回答

42

你可以这样说

<ListView
    ...
    android:divider="@null"
    ...
/>
默认情况下,分隔符应该在每个条目之后插入。

2

我很不喜欢回答自己的问题,但我找到了一个解决方案:

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

这解决了问题。但我仍希望知道如何使用XML来实现,并理解为什么它只在每隔一个项目插入。


0

您可以在xml中设置它:android:divider="@null"


与您的回答相比,这是一篇三年前被接受的答案的完全复制。 - Mike Baxter

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接