底部边距或填充在android上的xml中的相对布局中不起作用

时间:2012-04-19 21:39:11

标签: android imageview padding margin

我在RelativeLayout内有一行ListView。该行看起来像,

<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:id="@+id/relativeLayout1" 
    android:layout_width="wrap_content"
    android:layout_height="fill_parent">

    <ImageView
        android:id="@+id/placeDetailIcon_Img"
        android:layout_height="50dp"
        android:layout_width="50dp"
        android:layout_alignParentLeft="true" 
        android:paddingBottom="20dp"
        android:paddingTop="20dp" 
        android:paddingLeft="20dp"
        android:paddingRight="20dp"/>
</RelativeLayout>

我也尝试过保证金:

 <ImageView
    android:layout_height="50dp"
    android:layout_width="50dp"
    android:id="@+id/placeDetailIcon_Img" 
    android:layout_alignParentLeft="true" 
    android:layout_marginRight="10dp"
    android:layout_marginTop="10dp"
    android:layout_marginLeft="10dp"
    android:layout_marginBottom="10dp">

不应用ImageView周围的边距或填充。如何创建这种类型的间距?

3 个答案:

答案 0 :(得分:5)

你可以将它与我一起使用:

<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:id="@+id/relativeLayout1"
    android:layout_width="fill_parent"
    android:layout_height="fill_parent">  

     <ImageView
         android:id="@+id/imageView1"
         android:layout_width="50dp"
         android:layout_height="50dp"
         android:layout_alignParentLeft="true"
         android:layout_alignParentTop="true"
         android:layout_marginLeft="15dp"
         android:layout_marginTop="15dp" />

</RelativeLayout>

希望这会有所帮助。

答案 1 :(得分:3)

对于正在寻找解决方案的其他人 - 来自文档:

http://developer.android.com/reference/android/widget/RelativeLayout.html

&#34;请注意,您不能在RelativeLayout的大小与其子项的位置之间存在循环依赖关系。例如,您不能将RelativeLayout的高度设置为WRAP_CONTENT,将子级设置为ALIGN_PARENT_BOTTOM。&#34;

如果你将一个relativeView放在一个scrollview中,似乎也有一些奇怪的行为。

在我的情况下,我将relativeLayout设置为wrap_content,然后尝试将marginBottom添加到具有ALIGN_PARENT_BOTTOM属性的ImageView。当我明确设置高度时,它终于奏效了。

答案 2 :(得分:0)

我建议您使用LinearLayout ...或者您可以尝试删除该属性:android:layout_alignParentLeft="true"

如果要将视图置于RelativeLayout中心,可以使用:

android:layout_centerHorizontal="true"
android:layout_centerVertical="true"