我有2个LinearLayouts和一个相对布局中的按钮。 他们应该是这样的:
带顶栏的LinearLayout(约占屏幕的20%)
滚动视图中的大量元素占据了屏幕的大部分(约占屏幕的60%)
底部的按钮(约占屏幕的20%)
我试过这个:
<RelativeLayout
android:layout_width="fill_parent"
android:layout_height="fill_parent">
<LinearLayout
android:id="@+id/layoutTopBlack"
android:layout_alignParentTop="true"
android:layout_width="fill_parent"
android:layout_height="wrap_content">
<include layout="@layout/top_black_bar_cancel_register_button"/>
</LinearLayout>
<LinearLayout
android:id="@+id/layoutCenter"
android:layout_below="@id/layoutTopBlack"
android:layout_width="fill_parent"
android:layout_height="fill_parent">
<include layout="@layout/top_black_bar_cancel_register_button"/>
</LinearLayout>
<Button
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentBottom="true"
android:id="@+id/buttonNextStep"
android:text="@string/next_step"
style="@style/mainButtonStyle"/>
</RelativeLayout>
这不起作用。 layoutCenter位于按钮上方,因此我从未看到按钮。
有什么建议吗?
提前致谢。
编辑: 我从编辑那里找到了这个: 无法解析资源@ id / layoutTopBlack
答案 0 :(得分:0)
告诉你的layoutCenter在按钮上方布局,如下所示:
<LinearLayout android:id="@+id/layoutCenter" android:layout_above="@id/buttonNextStep" android:layout_below="@id/layoutTopBlack" android:layout_width="fill_parent" android:layout_height="fill_parent"> <include layout="@layout/top_black_bar_cancel_register_button"/> </LinearLayout>
答案 1 :(得分:0)
实际上,考虑到您提到的百分比,您可能希望在LinearLayout
使用layout weights,而不是使用RelativeLayout。
EG做你提到的20%/ 60%/ 20%的重量:
<LinearLayout
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical">
<View android:layout_height="0px" android:layout_weight="1" ... />
<View android:layout_height="0px" android:layout_weight="3" ... />
<View android:layout_height="0px" android:layout_weight="1" ... />
</LinearLayout>
如果顶部/底部栏只需要保留其内容,而不是占用固定的百分比,则renam.antune的答案应该有效,或者您可以使用上面的LinearLayout
但是设置顶部/底部栏包装内容而不对它们设置权重。然后,中心视图上的任何重量都会使其填充所有可用的剩余空间,而不会像使用fill_parent
那样擦除按钮。