将LinerLayout添加到另一个LinearLayout时,不会遵守上边距属性

时间:2012-08-15 06:45:28

标签: android

我正在尝试添加此子LinearLayout

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="fill_parent"
    android:layout_height="fill_parent"
    android:layout_marginTop="50dp"
    android:background="#FFFFFF"
    android:orientation="vertical" >

    <TextView
        android:id="@+id/textView1"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_marginLeft="50dp"
        android:layout_marginTop="10dp"
        android:text="Beautiful star-shaped spillway, Kechut Reservoir, Jermuk, Armenia"
        android:textAppearance="?android:attr/textAppearanceMedium" />

</LinearLayout>

加入此父LinearLayout

<ScrollView xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="fill_parent"
    android:layout_height="fill_parent"
    android:background="#F1F1F1" >

    <LinearLayout
        android:id="@+id/tiles"
        android:layout_width="fill_parent"
        android:layout_height="wrap_content"
        android:layout_marginLeft="10dp"
        android:layout_marginRight="10dp"
        android:orientation="vertical" >
    </LinearLayout>

</ScrollView>

我使用Inflater动态添加此内容,因此我的父LinearLayout中可能有多个项目。我希望孩子之间有间距,所以我添加了属性android:layout_marginTop="50dp"但是这个属性没有得到尊重。

我的孩子们出现时没有任何间距。我怎么能解决这个问题?

2 个答案:

答案 0 :(得分:1)

除了将孩子LinearLayout嵌套在另一个LinearLayout内并将marginTop属性添加到其中之外,我找不到其他方法。

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

    <LinearLayout
        xmlns:android="http://schemas.android.com/apk/res/android"
         android:layout_marginTop="10dp"
         android:layout_height="wrap_content"
         android:layout_width="wrap_content"
        android:background="#FFFFFF"
        android:orientation="vertical" >

        <TextView
            android:id="@+id/description"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_marginLeft="50dp"
            android:layout_marginTop="10dp"
            android:text=""
            android:textAppearance="?android:attr/textAppearanceSmall" />

    </LinearLayout>

</LinearLayout>

答案 1 :(得分:0)

在这种情况下,填充可能会更好。我已经体验到,当你不限制你的布局填充的高度或宽度往往会产生更好的结果(有时)。