在我的Android应用中,我在一个单独的XML文件中声明了一个自定义视图。
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout
android:id="@+id/download_interval_setter"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
xmlns:android="http://schemas.android.com/apk/res/android"
android:orientation="vertical">
<Button
android:layout_height="wrap_content"
android:layout_width="wrap_content"
android:id="@+id/Button_interval_up"
style="?android:attr/buttonStyleSmall">
</Button>
<EditText
android:id="@+id/Download_interval"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="1"
android:numeric="integer">
</EditText>
<Button
android:id="@+id/Button_interval_down"
style="?android:attr/buttonStyleSmall"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
>
</Button>
</LinearLayout>
然后我有我的main.xml文件,我希望包含上面XML中声明的视图,如下所示:
<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="fill_parent"
android:layout_height="fill_parent">
<ToggleButton android:layout_height="wrap_content"
android:id="@+id/XMLStart"
android:textOn="@string/auto_update_on"
android:textOff="@string/auto_update_off"
android:layout_width="wrap_content" />
<include layout="@layout/download_interval_setter"
android:layout_toRightOf="@id/XMLStart"/>
<Button android:layout_height="wrap_content"
android:id="@+id/ShowRadars"
android:text="@string/show_radars"
android:layout_width="wrap_content"
android:layout_below="@id/XMLStart"/>
<Button android:layout_height="wrap_content"
android:id="@+id/ShowAccidents"
android:text="@string/show_accidents"
android:layout_width="wrap_content"
android:layout_toRightOf="@id/ShowRadars"
android:layout_below="@id/XMLStart"/>
<Button android:layout_height="wrap_content"
android:id="@+id/ShowConstraints"
android:text="@string/show_constraints"
android:layout_width="wrap_content"
android:layout_below="@id/ShowRadars"/>
<Button android:layout_height="wrap_content"
android:id="@+id/ShowPatrols"
android:text="@string/show_patrols"
android:layout_width="wrap_content"
android:layout_below="@id/ShowRadars"
android:layout_toRightOf="@id/ShowConstraints"/>
</RelativeLayout>
正如您所看到的,我正在尝试设置包含视图的layout_toRightOf属性,但未设置,因为我在hierarchyviewer中也可以看到
另一方面,如果我只是将download_interval_setter.xml文件的内容复制粘贴到main.xml并在那里声明layout_toRightOf参数,那么视图将按照我的意愿定位在右边。
我哪里错了? 感谢
答案 0 :(得分:4)
所以,我找到了答案here。
答案 1 :(得分:0)
您必须在包含的xml文件中使用RelativeLayout
作为根布局,因为android:layout_toRightOf
不能与LinearLayout
一起使用。
答案 2 :(得分:0)
您尚未指定包含布局的宽度和高度