【问题标题】:Separator between ListView and TextView on AndroidAndroid 上 ListView 和 TextView 之间的分隔符
【发布时间】:2011-09-07 23:34:44
【问题描述】:

如下图所示,ListView 下方的 TextView(页脚)前出现一条黑线。

我无法理解是由于 listview 的底部填充还是 textview 的顶部填充,所以我尝试操纵 xml 布局添加 android:layout_marginBottom="0px" 和 android:paddingBottom=" 0px" 进入 listview 和 android:paddingTop="0px" 和 android:layout_marginTop="0px" 进入 textview 但没有任何效果!

请帮助我,因为我不知道如何解决这个问题!!!

这里是布局的xmls...

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
     android:orientation="vertical"
     android:layout_width="fill_parent"
     android:layout_height="fill_parent">
 <TextView
    android:layout_width="fill_parent"
    android:layout_height="wrap_content"
    android:text="@string/header"
    android:id="@+id/header"
    android:gravity="center"
    android:textSize="22sp"
    android:background="#777777"
/>
<ListView
    android:layout_height="wrap_content"
    android:layout_width="fill_parent"
    android:id="@+id/items_list"
    android:divider="#00000000"
    android:dividerHeight="0px"
    android:footerDividersEnabled="false"
    android:layout_marginBottom="0px"
    android:paddingBottom="0px"
/>      
<TextView 
    android:paddingTop="0px"
    android:layout_marginTop="0px"
    android:layout_width="fill_parent"
    android:layout_height="wrap_content" 
    android:text="@string/footer" 
    android:gravity="center" android:textSize="22sp"
    android:background="#777777/>
</LinearLayout>

这里将item的布局放到listview中

<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout 
    xmlns:android="http://schemas.android.com/apk/res/android"
    android:orientation="vertical" 
    android:layout_width="fill_parent"
    android:layout_height="fill_parent" 
    android:paddingBottom="0px"
    android:layout_marginBottom="0px"
    android:background="#777777">

    <TextView 
        android:layout_width="fill_parent" 
        android:text="Item List"
        android:layout_height="wrap_content" 
        android:id="@+id/item"
        android:textSize="22sp" 
    />
    <TextView 
        android:layout_width="fill_parent" 
        android:text="List Item bottom"
        android:layout_height="wrap_content" 
        android:id="@+id/item2"
        android:textSize="14sp" 
        android:layout_below="@id/item"
        android:layout_alignParentBottom="true" 
    />
    <TextView 
        android:layout_width="wrap_content" 
        android:text="List Item right"
        android:layout_height="wrap_content" 
        android:id="@+id/item3"
        android:textSize="16sp" 
        android:layout_alignParentRight="true"
        android:layout_centerVertical="true" 
      />
</RelativeLayout>

【问题讨论】:

标签: android listview layout textview


【解决方案1】:

看起来这是一个错误。有一个hackaround。在您的ListView 中写下:

<ListView ... android:layout_marginBottom="-3dp" />

这将解决这个特定问题。

话虽如此,我想再提一次,你应该使用ListView.addFooterView(),或者你可以使用layout_weight

<ListView       
    android:layout_width="fill_parent"
    android:layout_height="0dp"         
    android:layout_weight="1"
    android:background="#888888"
    ...
/>

选择最适合您需要的方法。但请注意,“-3dp”是一种 hack,不应该使用(除非你很绝望:)。

【讨论】:

    【解决方案2】:

    尝试将 android:footerDividersEnabled 属性设置为 false,看看是否有帮助。

    【讨论】:

      猜你喜欢
      • 2017-06-26
      • 1970-01-01
      • 2011-04-28
      • 1970-01-01
      • 2012-06-14
      • 1970-01-01
      • 2012-12-21
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多