Android:listview项目中文本的顶部和底部填充

时间:2014-03-10 06:24:52

标签: android android-layout listview android-listview android-adapter

我正在开发一个使用自定义列表视图的应用程序。 XML代码如下:

<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:background="@drawable/loginbg" >

    <RelativeLayout
        android:layout_width="fill_parent"
        android:layout_height="fill_parent"
        android:layout_margin="15sp"
        android:background="@android:color/white" >

        <ListView
            android:id="@+id/listview"
            android:layout_width="fill_parent"
            android:layout_height="fill_parent"
            android:divider="#000000"
            android:dividerHeight=".5sp" >
        </ListView>
    </RelativeLayout>

</RelativeLayout>

我的自定义适配器XML是:

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

    <TextView 
        android:id="@+id/textview"
        android:layout_width="fill_parent"
        android:layout_height="fill_parent"
        android:paddingTop="75sp"
        android:paddingBottom="75sp"
        android:gravity="center"
        android:textSize="20sp"
        android:textColor="@android:color/white" />

</RelativeLayout>

但我的出局并不像我需要的那样。我需要垂直填充文本,我在XML中的适配器textview中给出了它。

我的出局是:

output

我需要文本视图中顶部和文本块的空间,这是列表视图的适配器。

我也试过.java文件:

textView.setPadding(0, 75, 0, 75);

但没有用。

我需要输出:

enter image description here

请指导我现在应该做什么。

2 个答案:

答案 0 :(得分:0)

您不需要顶部和底部,请检查:

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

    <TextView
        android:id="@+id/textviewn_company_clsa"
        android:layout_width="fill_parent"
        android:layout_height="wrap_content"
        android:gravity="center"
        android:padding="75dp"
        android:text="asdf"
        android:textColor="@android:color/white"
        android:textSize="20sp" />

</RelativeLayout>  

对于自定义布局,在TextView内,使用marginTopmarginBottom(或layout_margin),这将为您提供{{1}以外的空间容器

填充提供容器中的空间。对于TextView ListView,您还需要以外的空间<{1}}。

检查:
Android beginner difference between padding and margin
Difference between a View's Padding and Margin

item

并且

row/item

单位需要在“dp”..:

android:paddingTop="75sp"
android:paddingBottom="75sp"  

并且

android:layout_margin="15sp"  
android:dividerHeight=".5sp" 

对于你的参考:
What is the difference between "px", "dp", "dip" and "sp" on Android?
http://www.prandroid.com/2013/03/differences-between-px-dip-dp-and-sp.html

答案 1 :(得分:0)

使用此:

<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="fill_parent"
    android:layout_height="60dp" >

    <TextView 
        android:id="@+id/textviewn_company_clsa"
        android:layout_width="fill_parent"
        android:layout_height="fill_parent"
        android:gravity="center"
        android:textSize="20sp"
        android:textColor="@android:color/white" />

</RelativeLayout>