如何在Android中安排这三个项目

时间:2016-03-22 04:41:00

标签: android android-studio

我试图在顶部(包含按钮)对齐水平滚动条,然后在此之后设置相对布局(可以包含我放在那里的任何内容),然后在底部对齐最终的水平滚动条。如何强制将水平滚动条固定到顶部/底部,然后将中间的相对布局拉伸到其间的所有其他部分?

3 个答案:

答案 0 :(得分:0)

使用LinearLayout ...

<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
              android:orientation="vertical"
              android:layout_width="match_parent"
              android:layout_height="match_parent"
              android:gravity="center">
    <RelativeLayout
        android:id="@+id/top_container"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"></RelativeLayout>
    <RelativeLayout
        android:id="@+id/middle_container"
        android:layout_width="match_parent"
        android:layout_height="0dp"
        android:layout_weight="1"></RelativeLayout>
    <RelativeLayout
        android:id="@+id/bottom_container"
        android:layout_width="match_parent"
        android:layout_height="wrap_content">
    </RelativeLayout>
</LinearLayout>

使用RelativeLayout ....

<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
              android:layout_width="match_parent"
              android:layout_height="match_parent"
    >
    <RelativeLayout
        android:id="@+id/top_container"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:layout_alignParentTop="true"></RelativeLayout>
    <RelativeLayout
        android:id="@+id/bottom_container"
        android:layout_width="match_parent"
        android:layout_alignParentBottom="true"
        android:layout_height="wrap_content">
    </RelativeLayout>
    <RelativeLayout
        android:id="@+id/middle_container"
        android:layout_width="match_parent"
        android:layout_below="@id/top_container"
        android:layout_above="@id/bottom_container"
        android:layout_height="match_parent"></RelativeLayout>
</RelativeLayout>

答案 1 :(得分:0)

您可以在layout_weight内使用LinearLayout进行扩展以填充布局。

例如:

<LinearLayout
        android:layout_width="match_parent"
        android:layout_height="match_parent"
        android:orientation="vertical" >
    <HorizontalScrollView
            android:layout_width="match_parent"
            android:layout_height="wrap_content" >
        <!-- Buttons -->
    </HorizontalScrollView>
    <RelativeLayout
            android:layout_width="match_parent"
            android:layout_height="0dp"
            android:layout_weight="1" >
        <!-- Content -->
    </RelativeLayout>
    <HorizontalScrollView
            android:layout_width="match_parent"
            android:layout_height="wrap_content" >
        <!-- More Buttons -->
    </HorizontalScrollView>
</LinearLayout>

答案 2 :(得分:0)

发布您的线框,以便我们可以提供更好的帮助。不过我认为你的解决方案可能是: - 保持主要布局为RelativeLayout。在主布局下使用另一个LinearLayout,方向为vertical.Place你的水平滚动视图和LinearLayout以及LinearLayout之外的其他项目,保持您的水平滚动视图具有此属性:

  

机器人:layout_alignParentBottom = “真”

您的xml将如下所示:

<RelativeLayout>
  <LinearLyout>
    // horizontal scrollview
    // other items
  </LinearLayout>
    // horizaontal scrollview with alignparentbottom="true"
</RelativeLAyout>