ListView中项之间的间距绝对为零

时间:2017-03-06 15:04:55

标签: android listview

我有ListView

    <ListView
        android:id="@+id/log_output"
        android:layout_width="match_parent"
        android:layout_height="match_parent"
        android:layout_weight="1"
        android:scrollbars="vertical"
        android:stackFromBottom="true"
        android:divider="@null"
        android:dividerHeight="0dp"
        android:transcriptMode="alwaysScroll"/>

使用以下布局自定义ArrayAdapter

<?xml version="1.0" encoding="utf-8"?>
<TextView xmlns:android="http://schemas.android.com/apk/res/android"
    android:id="@+id/log_line_list_item"
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    android:typeface="monospace"
    android:textSize="10sp"
    android:gravity="center_vertical"/>

如您所见,我已尽力在列表视图中禁用分隔符。但是,我仍然看到项目之间可能有1-2像素的额外像素(垂直)。如果可能的话,我想消除这种神秘的额外间距,因为它会使文本在一定程度上呈现双倍间距。如何摆脱额外的间距?

编辑:

列表视图的屏幕截图。请注意,自动换行后的间距要小得多(约1-2行像素)。列表中的每个新项目都以--开头。请注意,添加到列表中的新项目间距略大。理想情况下,我希望自动换行中使用的间距与列表项之间的间距相同。

enter image description here

2 个答案:

答案 0 :(得分:2)

也许你看到为字体中的重音和其他上升/下降留下了额外的空间?您可以尝试通过在TextView中设置 $mm = new MyModel(); $mm->share_info = 'yes'; $mm->save(); 来禁用此功能。

此处有更多信息:https://developer.android.com/reference/android/widget/TextView.html#attr_android:includeFontPadding

答案 1 :(得分:0)

尝试使用android:divider="0dp"