相对布局背景未填满所有空间

时间:2011-11-14 13:13:40

标签: android background padding relativelayout

我有一个背景图像的相对布局,但我希望图像填充所有的布局空间,我认为这是一个填充问题,我设置为-1dip,这是行不通的。 在将我的填充设置为-1dip之前,当我用层次查看器检查填充时。 这是我的xml

<RelativeLayout
        android:id="@+id/relativeLayout2"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:layout_below="@+id/gridView"
        android:background="@drawable/tool_bar"
        android:gravity="center"
       >

        <ImageView
            android:id="@+id/imageView1"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:src="@drawable/locate" />

        <ImageView
            android:id="@+id/imageView2"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_toRightOf="@+id/imageView1"
            android:src="@drawable/orbit" />

        <ImageView
            android:id="@+id/imageView3"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_alignParentTop="true"
            android:layout_toRightOf="@+id/imageView2"
            android:src="@drawable/search" />

        <ImageView
            android:id="@+id/imageView4"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_toRightOf="@+id/imageView3"
            android:src="@drawable/snap" />

        <ImageView
            android:id="@+id/imageView5"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_toRightOf="@+id/imageView4"
            android:src="@drawable/profile" />
    </RelativeLayout>
thanks

4 个答案:

答案 0 :(得分:2)

我碰到了同样的问题。我认为默认情况下RelativeLayout不会将背景扩展到它的尺寸。

以下列方式使用内部视图结束:

<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="300px"
android:layout_height="204px">
    <View 
    android:layout_width="fill_parent"
    android:layout_height="fill_parent"       
    android:background="@android:color/white"/> //Or whatever background you pick
</RelativeLayout>

不是我希望的解决方案,而是解决方案。

答案 1 :(得分:1)

如果要按宽度和高度填充所有空间,请使用FILL_PARENT,或者如果要填充它们,如填充宽度而不是高度,则将高度设置为wrap_content,或者如果要填充高度而不是宽度则将wrap_content设置为width

就像这里一样,它将填补两者

<RelativeLayout
        android:id="@+id/relativeLayout2"
        android:layout_width="fill_parent"
        android:layout_height="fill_parent"
        android:layout_below="@+id/gridView"
        android:background="@drawable/tool_bar"
        android:gravity="center"
       >
</RelativeLayout>

答案 2 :(得分:0)

 <RelativeLayout
    android:id="@+id/relativeLayout2"
    android:layout_width="fill_parent"
    android:layout_height="wrap_content"
    android:background="@drawable/tool_bar"
   >  

应该做我假设的技巧

答案 3 :(得分:-1)

我认为您希望图像填充到相对布局。 你试一下。它可能对你有所帮助。 的 FILL_PARENT

<ImageView
            android:id="@+id/any_image"
            android:layout_width="fill_parent"
            android:layout_height="fill_parent"
            android:src="@drawable/profile_you" />