如何设置我的子布局也从父母的位置开始?

时间:2017-11-08 11:41:50

标签: android android-layout layout

我尝试从屏幕边缘开始设置LinearLayout(就像父布局一样)。我不希望两个布局之间有空格。 我需要从屏幕边缘左侧开始,顶部也是边缘。或遵循父左侧和顶部属性。

注意: 假设我不想更改相对布局属性,只有线性布局的变化意味着如何修复它?

<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:tools="http://schemas.android.com/tools"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:paddingBottom="@dimen/activity_vertical_margin"
    android:paddingLeft="@dimen/activity_horizontal_margin"
    android:paddingRight="@dimen/activity_horizontal_margin"
    android:paddingTop="@dimen/activity_vertical_margin"
    tools:context="com.example.zd.MainActivity" >


 <LinearLayout
      android:layout_width="match_parent"
      android:layout_height="wrap_content"
      android:orientation="horizontal"
      android:id="@+id/preview" 
      android:focusable="true">
       <requestFocus />

  </LinearLayout>
</RelativeLayout>

2 个答案:

答案 0 :(得分:0)

删除这些行..这些是为孩子创建填充。

android:paddingBottom="@dimen/activity_vertical_margin"
android:paddingLeft="@dimen/activity_horizontal_margin"
android:paddingRight="@dimen/activity_horizontal_margin"
android:paddingTop="@dimen/activity_vertical_margin"

但根据你的问题。

<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:tools="http://schemas.android.com/tools"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:background="@color/gray"

    android:clipToPadding="false" // this will do the trick here

    android:paddingBottom="@dimen/activity_vertical_margin"
    android:paddingLeft="@dimen/activity_horizontal_margin"
    android:paddingRight="@dimen/activity_horizontal_margin"
    android:paddingTop="@dimen/activity_vertical_margin" >

    // suppose you have 16dp padding
    <LinearLayout
        android:layout_marginTop="-16dp" 
        android:layout_marginBottom="-16dp"
        android:layout_marginLeft="-16dp"
        android:layout_marginRight="-16dp"
        android:layout_width="match_parent"
        android:layout_height="match_parent"
        android:orientation="horizontal"
        android:id="@+id/preview"
        android:background="@color/green"
        android:focusable="true">
        <requestFocus />

    </LinearLayout>
</RelativeLayout>

答案 1 :(得分:0)

如下所示。

<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:tools="http://schemas.android.com/tools"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    tools:context="com.example.zd.MainActivity" >


 <LinearLayout
      android:layout_width="match_parent"
      android:layout_height="wrap_content"
      android:orientation="horizontal"
      android:id="@+id/preview" 
      android:focusable="true">
       <requestFocus />

  </LinearLayout>
</RelativeLayout>