这个警告的意思是什么?
没有标签视图使用android:labelFor="@id/@id/editText1"属性指向此文本字段
请注意,双重id (@id/@id
) 是错误信息文本中的问题,不反映XML内容(正确语法)。
这个警告的意思是什么?
没有标签视图使用android:labelFor="@id/@id/editText1"属性指向此文本字段
请注意,双重id (@id/@id
) 是错误信息文本中的问题,不反映XML内容(正确语法)。
labelFor
是辅助功能选项的属性。您将此分配给标签,以便如果在表单上用户点击文本编辑字段,则Android可以知道要读取(TalkBack)给用户的内容。
您分配的id似乎不是有效的。为什么ID中有两个@id
?请使用如下的ID:@id/editText1
我也遇到了同样的警告信息。当我给我的EditText添加了提示时,它消失了。
android:hint="Some explanation about the input..."
…
。 - Dave Chen虽然我不熟悉你发布的确切错误,但它绝对听起来像是你在textView
中做错了什么。请按以下方式使用id来使用你的textView
。
android:id="@+id/editText1"
如果您想设置,请使用:
Translated:If you want to set labelFor
, use:
android:labelFor="@+id/editText1"
<TextView
android:id="@+id/my_textView"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:labelFor="@+id/my_editText" <!--the plus sign goes first in the code-->
android:text="I'm a label" />
<EditText
android:id="@id/my_editText" <!--no plus sign if not the first-->
android:layout_width="wrap_content"
android:inputType="text"
android:layout_height="wrap_content" />
这不仅适用于文本视图。
删除第一个 "@id/",使用如下格式:
android:id="@+id/editText1"
这是正确的格式。继续加油.. 祝你好运.. :)
我通过编写以下两个属性来解决它:
android:id="@+id/editText1"
android:labelFor="@+id/editText1"
如果XML看起来正确,而且你在图形布局模式下,那么它可能使用了一个不支持EditText的较新版本的Android渲染布局。
在Eclipse和Android Studio中,应该有一个绿色的Android图标,显示正在呈现布局的API版本。确保你使用的是非W或可穿戴API,因为Android W API不支持EditText元素。(EditText最可能不受支持,因为这些设备上的虚拟键盘空间有限)。
渲染预览应该支持任何API 4.X版本的EditText,没有尾随的W。
tools:ignore="labelFor"
来忽略这个问题。 - Naveen Kumar M