我刚刚做了关于如何制作温度转换器的教程,但教程没有解释如何摆脱编辑文本输入上的感叹号。错误是:
没有标签视图指向此文本字段,其中包含android:labelFor =“+ id / @ + id / editText1”属性
答案 0 :(得分:0)
再看一下你的XML布局文件。您希望将@+id/editText1
作为ID。当您引用它时,您想要致电:
EditText editText1 = (EditText)findViewById(R.id.editText1)
请注意,仅在定义属性时,您不需要在引用时编写@+id/
。也许这可能是问题所在。
另外,如果你想更改文本,我还没有阅读教程,但应该在strings.xml
内定义。
答案 1 :(得分:0)
将其添加到布局xml中的TextView:
android:labelFor="@+id/editText1"
我不知道为什么,但它确实有效。
答案 2 :(得分:0)
如果您希望使用lint来抑制错误,我将在下面描述如何找出要抑制的lint警告的名称。
要禁止的完整警告消息:
缺少
labelFor
属性没有标签视图指向此文本字段 android:labelFor =“@ + id / searchTextView”属性
文本字段应标有labelFor属性,提供 你的minSdkVersion至少是17岁。
如果您的视图已标记,但标签位于不同的布局中 包括这个,只是从lint中抑制这个警告。
要禁止它,请将属性tools:ignore="LabelFor"
添加到组件声明中,例如:
<EditText
android:id="@+id/searchTextView"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:layout_centerVertical="true"
android:layout_marginStart="62dp"
android:layout_toStartOf="@id/clearTextButton"
android:ellipsize="end"
android:inputType="textLongMessage|textNoSuggestions"
android:maxLines="1"
tools:hint="Search STATICDCA"
tools:ignore="LabelFor" />
要确定该值为LabelFor
,我在Android Studio中执行了以下操作:
tools:ignore="LabelFor"
添加到我的xml文件