android:如何在FrameLayout内的LinearLayout中添加填充

时间:2014-02-06 02:15:37

标签: android android-layout android-framelayout

我有很多孩子的FrameLayout。其中一个孩子是LinearLayout。我希望LinearLayout的宽度为match_parent,但约为90%;这意味着我想添加某种paddingLeft/RightmargingLeft/Right。但是当我添加填充或边距时,它不会应用于图形布局。我该如何正确地做到这一点?

<FrameLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:background="@color/blue" >

    <LinearLayout
        android:layout_width="match_parent"
        android:layout_height="match_parent"
        android:layout_gravity="center_horizontal"
        android:background="@color/red"
        android:marginLeft="20dp"
        android:marginRight="20dp"
        android:orientation="vertical" >
....

2 个答案:

答案 0 :(得分:10)

你有

android:marginLeft="20dp"
android:marginRight="20dp"

而是将其更改为:

android:layout_marginLeft="20dp"
android:layout_marginRight="20dp"

如果它仍然不起作用,请将此布局放在另一个布局中,并将边距设置为另一个布局。

答案 1 :(得分:1)

您需要使用以下代码,这是不正确的

android:marginLeft="20dp"
android:marginRight="20dp"

试试这个: -

  <?xml version="1.0" encoding="utf-8"?>
    <FrameLayout xmlns:android="http://schemas.android.com/apk/res/android"
        android:layout_width="match_parent"
        android:layout_height="match_parent"
        android:background="@android:color/black"
        android:orientation="vertical" >

        <LinearLayout
            android:layout_width="match_parent"
            android:layout_height="match_parent"
            **android:layout_marginLeft="20dp"
            android:layout_marginRight="20dp"**
            android:background="@android:color/white"
            android:orientation="vertical" >
        </LinearLayout>

    </FrameLayout>

同样,您可以在顶部和底部给出保证金