Android 将滚动视图放置在线性布局下方的相对位置

Android 将滚动视图放置在线性布局下方的相对位置,android,android-layout,xamarin.android,Android,Android Layout,Xamarin.android,我正在创建一个带有关闭按钮(LinearLayout)的可滚动菜单(ScrollView),该按钮位于屏幕顶部 我的全屏是一个相对的窗口,里面有一个线性布局(关闭按钮),然后是一个滚动视图(菜单): <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:app="http://schemas.android.com/apk/res-auto" android:id="

我正在创建一个带有关闭按钮(LinearLayout)的可滚动菜单(ScrollView),该按钮位于屏幕顶部

我的全屏是一个相对的窗口,里面有一个线性布局(关闭按钮),然后是一个滚动视图(菜单):

<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:app="http://schemas.android.com/apk/res-auto"
    android:id="@+id/DashboardView_Root"
    android:layout_width="match_parent"
    android:layout_height="match_parent">
    <LinearLayout
        android:id="@+id/DashboardView_menuHeaderContainer"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_alignParentLeft="true"
        android:layout_alignTop="@+id/DashboardView_barContainer"
        android:layout_alignBottom="@+id/DashboardView_barContainer"
        android:orientation="horizontal">
        <ImageView
            android:id="@+id/DashboardView_menuBtn"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:clickable="true"
            android:focusable="true"
            android:paddingLeft="@dimen/layoutPaddingExtra"
            android:paddingTop="@dimen/layoutPaddingExtra"
            android:paddingRight="@dimen/layoutPaddingExtra"
            android:paddingBottom="@dimen/layoutPaddingLess"
            android:contentDescription="Menu"
            android:layout_gravity="bottom|center_vertical" />
        <Iag.TextView
            android:id="@+id/DashboardView_menuHeading"
            style="@style/Text.H3.Light"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:paddingLeft="@dimen/layoutPadding"
            android:paddingTop="@dimen/layoutPaddingExtra"
            android:paddingRight="@dimen/layoutPaddingExtra"
            android:paddingBottom="@dimen/layoutPaddingExtra"
            android:layout_gravity="bottom" />
    </LinearLayout>
    <Scrollview
    android:id="@+id/DashboardView_menuContainer"
    android:layout_width="match_parent"
    android:layout_alignParentBottom="true"
    android:fillViewport="true" />
</RelativeLayout>

所有这些看起来都很完美,除了滚动视图在“关闭”按钮下面升得太高。我希望ScrollView菜单停止在关闭按钮(frameLayout)的底部

如何阻止菜单在与关闭按钮(屏幕顶部)相同的位置启动

编辑:对不起,我说“关闭”按钮最初是一个框架布局,但它是一个线性布局。请参阅上面的代码axml。

以下是整个页面的完整代码-如果用户单击菜单图标,菜单将弹出屏幕的其余部分:

    <?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:app="http://schemas.android.com/apk/res-auto"
    android:id="@+id/DashboardView_Root"
    android:layout_width="match_parent"
    android:layout_height="match_parent">
    <FrameLayout
        android:id="@+id/DashboardView_contentContainer"
        android:layout_width="match_parent"
        android:layout_height="match_parent"
        android:layout_above="@+id/DashboardView_downBtn"
        android:layout_below="@+id/DashboardView_barContainer" />
    <ImageView
        android:id="@+id/DashboardView_downBtn"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_gravity="center_horizontal"
        android:paddingTop="@dimen/layoutPadding"
        android:paddingBottom="@dimen/layoutPaddingExtra"
        android:paddingLeft="@dimen/layoutPaddingExtra"
        android:paddingRight="@dimen/layoutPaddingExtra"
        android:clickable="true"
        android:focusable="true"
        android:layout_alignParentBottom="true"
        android:layout_centerHorizontal="true" />
    <FrameLayout
        android:id="@+id/DashboardView_barContainer"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:layout_alignParentTop="true"
        android:fitsSystemWindows="true">
        <ImageView
            android:id="@+id/DashboardView_upBtn"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:clickable="true"
            android:focusable="true"
            android:src="@drawable/ab_logo"
            android:paddingLeft="@dimen/layoutPaddingExtra"
            android:paddingTop="@dimen/layoutPaddingExtra"
            android:paddingRight="@dimen/layoutPaddingExtra"
            android:paddingBottom="@dimen/layoutPaddingLess"
            android:contentDescription="Up"
            android:layout_gravity="center_horizontal" />
        <ImageView
            android:id="@+id/DashboardView_helpBtn"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:clickable="true"
            android:focusable="true"
            android:src="@drawable/ab_help"
            android:paddingLeft="@dimen/layoutPaddingExtra"
            android:paddingTop="@dimen/layoutPaddingExtra"
            android:paddingRight="@dimen/layoutPaddingExtra"
            android:paddingBottom="@dimen/layoutPaddingLess"
            android:contentDescription="Help"
            android:layout_gravity="right" />
    </FrameLayout>
    <LinearLayout
        android:id="@+id/DashboardView_menuHeaderContainer"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_alignParentLeft="true"
        android:layout_alignTop="@+id/DashboardView_barContainer"
        android:layout_alignBottom="@+id/DashboardView_barContainer"
        android:orientation="horizontal">
        <ImageView
            android:id="@+id/DashboardView_menuBtn"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:clickable="true"
            android:focusable="true"
            android:paddingLeft="@dimen/layoutPaddingExtra"
            android:paddingTop="@dimen/layoutPaddingExtra"
            android:paddingRight="@dimen/layoutPaddingExtra"
            android:paddingBottom="@dimen/layoutPaddingLess"
            android:contentDescription="Menu"
            android:layout_gravity="bottom|center_vertical" />
        <Iag.TextView
            android:id="@+id/DashboardView_menuHeading"
            style="@style/Text.H3.Light"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:paddingLeft="@dimen/layoutPadding"
            android:paddingTop="@dimen/layoutPaddingExtra"
            android:paddingRight="@dimen/layoutPaddingExtra"
            android:paddingBottom="@dimen/layoutPaddingExtra"
            android:layout_gravity="bottom" />
    </LinearLayout>
    <Scrollview
    android:id="@+id/DashboardView_menuContainer"
    android:layout_width="match_parent"
    android:layout_alignParentBottom="true"
    android:fillViewport="true" />
</RelativeLayout>


因此,在您的情况下,使用下面的
android:layout_
将其放置在按钮下方。在相对布局中,此类属性始终可用。

您是否尝试过使用下面的
android:layout\u
?@theananymous010有效!谢谢,太棒了!你会接受我的帖子作为帮助其他人解决这个问题的答案吗?没关系,我看你已经接受了:)