我有几个布局,我想inlcude/>
一个包含两个按钮的底栏。很简单吧?好吧,我遇到问题,因为无论我为它设置什么参数,按钮都设置在View的顶部。
Here's how it currently looks.
这是实际的合并代码:
<?xml version="1.0" encoding="utf-8"?>
<merge xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:orientation="vertical" >
<View
android:id="@+id/divider"
android:layout_width="match_parent"
android:layout_height="1dp"
android:background="?android:attr/dividerHorizontal" />
<LinearLayout
android:id="@+id/button_container"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:divider="?android:attr/dividerVertical"
android:orientation="horizontal"
android:showDividers="middle" >
<Button
android:id="@+id/left_button"
style="?android:attr/borderlessButtonStyle"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_weight="1"
android:text="@string/cancel" />
<Button
android:id="@+id/right_button"
style="?android:attr/borderlessButtonStyle"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_weight="1"
android:text="@string/complete" />
</LinearLayout>
以下是包含它的布局之一:
<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:id="@+id/RelativeLayout1"
android:layout_width="match_parent"
android:layout_height="match_parent"
>
<TextView
android:id="@+id/register_title_two"
style="?android:attr/listSeparatorTextViewStyle"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_alignParentLeft="true"
android:layout_alignParentTop="true"
android:layout_margin="8dp"
android:padding="8dp"
android:text="@string/i_want_to"
android:textColor="@android:color/holo_blue_dark" />
<RadioGroup
android:id="@+id/extend_delete_alert_group"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_alignParentLeft="true"
android:layout_below="@+id/register_title_two" >
<RadioButton
android:id="@+id/delete_alerts"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:gravity="center_vertical"
android:minHeight="32dp"
android:padding="8dp"
android:text="@string/delete_alerts"
android:textSize="14sp" />
<RadioButton
android:id="@+id/extend_alerts"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:gravity="center_vertical"
android:minHeight="32dp"
android:padding="8dp"
android:text="@string/extend_alerts"
android:textSize="14sp" />
</RadioGroup>
<include
android:id="@+id/include1"
android:layout_height="wrap_content"
android:layout_width="wrap_content"
android:layout_alignParentBottom="true"
layout="@layout/two_button_bar" />
我已经阅读了几个答案,他们都指出将include>
和merge>
设置为wrap_content
的高度和宽度,但这就是我已经拥有它的方式,它仍然是一个禁忌。
有什么想法吗?
答案 0 :(得分:2)
<include />
真的只是削减&amp;粘贴和<merge />
表示加入RelativeLayout。所以你需要给出这些元素RelativeLayout规则,尝试添加:
android:layout_above="@+id/button_container"
到分隔视图。并添加:
android:layout_alignParentBottom="true"
到LinearLayout。
答案 1 :(得分:0)
你可以在你的xml中的标签中给出一个id,然后在你想要的RelativeLayout中的布局中你可以使用layout_below="@id/-includedlayout-id
这会按照你想要的方式对齐布局。
<include android:id="@+id/include1"
layout="-yourLayout-"/>
<RelativeLayout
...
android:layout_below="@id/include1>