【问题标题】:Can't see the ListView divider看不到 ListView 分隔线
【发布时间】:2013-12-22 15:27:08
【问题描述】:

我在列表视图中添加了一个分隔符,但那里什么也没有。 ListView 保持完全一样,就好像没有设置任何分隔线一样。

这是 ListView XML:

<ListView
    android:id="@+id/listview_language"
    android:layout_width="fill_parent"
    android:layout_height="wrap_content"
    android:divider="@drawable/shadow" />

@drawavble/shadow XML:

<?xml version="1.0" encoding="utf-8"?>
<selector xmlns:android="http://schemas.android.com/apk/res/android" >

<item 
    >
    <shape 
        >
        <gradient android:startColor="@color/shadow_start"
            android:endColor="@color/shadow_end"
            android:angle="90"/>
        <stroke 
            android:height="1dp"/>
    </shape>
</item>

</selector>

为什么ListView上不会出现分隔线?

【问题讨论】:

    标签: android xml listview android-listview


    【解决方案1】:

    您还应该将android:dividerHeight 属性添加到您的布局中

    【讨论】:

    • 谢谢!现在显示了分隔线。但是如果您碰巧知道解决方案,就会出现另一个问题。分隔线现在位于每个列表视图元素的顶部。有没有办法把它移到底部?再次感谢!编辑:没关系,分隔线显示在元素之间,而不是在顶部,最后一个元素没有分隔线:)
    • 最后一项是否也需要一个分隔符?这对我来说没有意义
    • 是的,这就是我的目标。我希望最后一项也有一个分隔线。我想我会通过在列表视图下添加另一个可绘制的分隔线来解决它。
    • 好的,对我来说仍然没有意义。如果数据集的元素是您更改其可见性的最后一个元素,您还可以尝试在数据集和 getView 中添加假元素.
    【解决方案2】:

    尝试在你的影子 xml 文件中将 selector 根元素替换为 layer-list

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多