相对布局

时间:2011-01-12 10:25:15

标签: android

我不太了解RelativeLayout,我不明白为什么使用这个XML(它代表listview的一个项目):

<?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"
    android:background="@drawable/sfumatura_riga"
    >

        <ImageView
        android:id="@+id/featured_new_image"
        android:layout_alignParentLeft="true"        
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:src="@drawable/no_foto" 

        />

        <LinearLayout
        android:layout_toRightOf="@id/featured_new_image"
        android:orientation="vertical"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_marginLeft="5dp"
        >

        <TextView
            style="@style/featured_new_title"
            android:id="@+id/featured_city"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_marginBottom="5dp"
            android:layout_marginTop="10dp"


        />

        <TextView
            style="@style/featured_name_country"
            android:id="@+id/featured_country"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
        />




    </LinearLayout>

    <TextView
            style="@style/featured_date"
            android:id="@+id/featured_date"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_marginTop="10dp"
            android:layout_marginRight="5dp"
            android:layout_alignParentRight="true"
        />



</RelativeLayout>                           

我遇到这个结果,为什么行底部有太多的余量? alt text

2 个答案:

答案 0 :(得分:2)

我主要看两件事:

  1. 在相对布局中,更改android:layout_height="fill_parent" to android:layout_height="wrap content"
  2. 我猜背景只是一个渐变。但是,如果它是一个图像,那么它可能太大而整个行都是垂直拉伸的。

答案 1 :(得分:0)

非常感谢!我解决了用LinearLayout替换RelativeLaoyout,我分享了解决方案,希望能帮助那些有同样问题的人:

    <ImageView
    android:id="@+id/featured_new_image"
     android:layout_width="120dp"
    android:layout_height="fill_parent"
    android:src="@drawable/no_foto" 

    />

<LinearLayout
    android:orientation="vertical"
    android:layout_weight="1"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:layout_marginLeft="5dp"
    >

    <TextView
        style="@style/featured_new_title"
        android:id="@+id/featured_city"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_marginBottom="5dp"
        android:layout_marginTop="10dp"


    />

    <TextView
        style="@style/featured_name_country"
        android:id="@+id/featured_country"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
    />




</LinearLayout>

<TextView
        style="@style/featured_date"
        android:id="@+id/featured_date"
        android:layout_marginTop="10dp"
        android:layout_marginRight="5dp"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_gravity="right"
    />