我在标题中有一个下拉菜单。按下按钮时,下拉菜单会出现。问题是活动中的所有其他视图都被定位android:layout_below="@id/header"
并且下拉菜单将所有内容向下推,因为它增加了标题的高度。android:layout_height="wrap_content"
为了防止这种情况,我需要排除下拉菜单。是否可以?
注意:我可以通过编程方式解决问题,我只想了解是否可以从 XML 中的“warp_content”中排除项目。
我在标题中有一个下拉菜单。按下按钮时,下拉菜单会出现。问题是活动中的所有其他视图都被定位android:layout_below="@id/header"
并且下拉菜单将所有内容向下推,因为它增加了标题的高度。android:layout_height="wrap_content"
为了防止这种情况,我需要排除下拉菜单。是否可以?
注意:我可以通过编程方式解决问题,我只想了解是否可以从 XML 中的“warp_content”中排除项目。
除非您设置android:visibility=gone
. 但是您可能想要替换您的主容器RelativeLayout
,然后您可以根据需要放置一些元素
从 a 开始RelativeLayout
,然后在 中添加所有项目RelativeLayout
,最后,将头文件放在 xml 的底部(在某种意义上,在底部,它将显示在所有其他元素上)。例如这样的:
<!-- Root element -->
<RelativeLayout
android:layout_width="match_parent"
android:layout_height="match_parent">
<!-- First text view, the margin_top defines space for your header -->
<TextView android:id="@+id/tv1" android:layout_margin_top="height_of_your_header"/>
<!-- TextView below another view -->
<TextView android:id="@+id/tv2" android:layout_below="@+id/tv1" />
<!-- Your Header file, which will be positioned over all elements
- When closed, it will fit above @id/tv1
- When opened, it will float above the other elements -->
<include
layout="@layout/header"
android:layout_width="match_parent"
android:layout_height="match_parent" />
</RelativeLayout>