如何使碎片高度占用全部剩余空间
问题描述:
我有两个碎片A和B的活动。两者的宽度都设置为match_parent。片段B的高度为200dp,位于片段A的下方。我希望片段A的高度填充活动中剩余的空间。我怎样才能做到这一点?任何提示将不胜感激。如何使碎片高度占用全部剩余空间
我已经张贴了我activity_main.xml中
<LinearLayout xmlns:tools="http://schemas.android.com/tools"
xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:baselineAligned="false"
android:orientation="vertical"
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=".MainActivity" >
<fragment
android:id="@+id/image_showing_list"
android:name="com.example.gallery.ImageShowingList"
android:layout_width="match_parent"
android:layout_height="0dp"
android:layout_weight="1" />
<fragment
android:id="@+id/image_showing_list_list"
android:name="com.example.gallery.ImageShowingList"
android:layout_width="match_parent"
android:layout_height="100dp" />
</LinearLayout>
答
如果他们是在一个垂直LinearLayout
,然后分配android:layout_height="0dp"
和android:layout_weight="1"
到碎片A.
感谢CommonsWare,但我得到这个错误信息,当我设置android:layout_height =“0dp”可疑大小:这将使重量不可见,很可能用于layout_width。为了清楚起见,我发布了我的activity_main.xml文件。 – Jomeno
@Jomeno:“我已经发布了我的activity_main.xml文件以求清晰” - 这不是您的整个'activity_main.xml'文件。您可以知道,因为它不是有效的XML文件,因为没有单个根元素。你也会注意到,我的回答是以“如果它们在一个垂直的'LinearLayout'中开始的,你的片段的属性表明它们在一个'RelativeLayout'中,而不是一个垂直的'LinearLayout'。你可能希望发布你的* * **整个'activity_main.xml'文件,或至少在容器周围的两个''元素 –
CommonsWare
我已经使用的LinearLayout没有成功,但一旦试过我与你设定的Android的答案又试了一次:layout_height =“0dp “和android:layout_weight =”1“这一切都完全按照我想要的方式工作,非常感谢你,我一直在这个一段时间,我给你的答案竖起大拇指 – Jomeno