布局无效(EditText)

时间:2014-12-13 11:36:11

标签: android android-layout

它说我的EditTexts无效。 我不知道它有什么问题,但更具体地说它表示android:id无效。

<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:tools="http://schemas.android.com/tools"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    tools:context=".SettingsActivity">
    <TextView
        android:id="@+id/text_view_header"
        android:layout_width="fill_parent"
        android:layout_height="wrap_content"
        android:gravity="center_horizontal"
        android:textColor="#FF0000"
        android:textSize="20sp"
        android:text="Testapp" />
     <EditText
        android:id="@+id/host" 
        android:layout_width="fill_parent" 
        android:gravity="center_horizontal" 
        android:layout_height="wrap_content" 
        android:layout_below="@+id/text_view_header" 
        android:inputType="textNoSuggestions" 
        android:hint="@string/host" /> 
     <EditText
        android:id="@+id/host2" 
        android:layout_width="fill_parent"  
        android:gravity="center_horizontal" 
        android:layout_height="wrap_content" 
        android:layout_below="@+id/spyhost" 
        android:inputType="textNoSuggestions" 
        android:hint="@string/host2" />
     <Button
        android:id="@+id/save"
        android:layout_width="fill_parent"
        android:layout_height="wrap_content"
        android:gravity="center_horizontal"
        android:layout_below="@+id/vidhost"
        android:text="Save Settings"
        android:onClick="onClickSave" />
</RelativeLayout>
编辑:修复非常简单。有些字符无法显示,因此用新空格或制表符替换所有空格。造成这种情况的原因很可能是从网站复制内容。谢谢@Squonk

1 个答案:

答案 0 :(得分:0)

 android:layout_below="@+id/text_view_header"

应该是

 android:layout_below="@id/text_view_header"
在layout_below属性中

在id之前不应该有“+”符号。在layout_below中设置的元素的id应该与layout_below设置的元素在同一父布局中。在你的代码中,第二个edittext即host2 edittext具有layout_below属性,其中id是spyhost,但没有这样的元素,spyhost id定义了相对布局。按钮也有类似的问题。