【发布时间】:2011-04-07 21:23:34
【问题描述】:
我有一个带有 BaseAdapter 的 ListView。在 XML 中,我将项目分隔符指定为红色,高度为 10dip。
<ListView android:layout_width="fill_parent"
android:layout_height="0px"
android:id="@+id/lv"
android:layout_weight="1"
android:cacheColorHint="#00000000"
android:divider="#FF0000"
android:dividerHeight="10dip"
android:fadingEdge="none">
</ListView>
但是,当应用程序运行时,我没有看到项目之间的红色分隔线。有人能告诉我为什么吗?谢谢。
编辑:在我的适配器代码中,我有以下代码:
@Override
public boolean areAllItemsEnabled() {
return false;
}
@Override
public boolean isEnabled(int position) {
return false;
}
因为我想控制每个项目的 onClick 行为。不知道上面的代码是否让分隔线消失了。
【问题讨论】:
-
可能是 android:layout_height="0px" 可能是个问题。
-
列表视图在线性布局中。项目显示正确,但没有显示分隔线。
-
设置 layout_height="0dip" 或类似设置是正确的,当您还在垂直 LinearLayout 中设置 layout_weight 时,因为您希望它消耗可用空间。
-
即使我将 android:layout_height="0px" 更改为 android:layout_height="fill_parent" 后,我仍然没有看到分隔线。
-
我刚刚发现,为 isEnabled 返回 false 是分隔线没有出现的原因。感谢您的帮助,朋友们。
标签: android