Meaning of “No label views point to this text field” warning message

后端 未结 8 1331
耶瑟儿~
耶瑟儿~ 2020-12-09 01:58

What is the meaning of this warning?

No label views point to this text field with an android:labelFor=\"@ id/@ id/editText1\" attribute

相关标签:
8条回答
  • 2020-12-09 02:05

    Although I am not familiar with the exact error you have posted. But it definitely sounds like you have done something wrong with the id in the textView. Use id like following in your textView.

    android:id="@+id/editText1"
    

    And if you want to set labelFor then use :

       android:labelFor="@+id/editText1"
    
    0 讨论(0)
  • 2020-12-09 02:10

    I solved it by writing both attributes:

    android:id="@+id/editText1" android:labelFor="@+id/editText1"

    0 讨论(0)
  • 2020-12-09 02:14

    If the XML looks correct and you're in a Graphical Layout mode then it's probably using a later version of the Android rendering layout that doesn't support EditText.

    In Eclipse and Android Studio there should be a green Android icon with what API version is rendering the layout. Make sure you're using a non W or Wearable API as Android W APIs don't support the EditText element. (EditText is most likely not supported because virtual keyboard space is limited on those devices).

    The rendered preview should support EditText in any API 4.X version without a trailing W.

    0 讨论(0)
  • 2020-12-09 02:16

    I've had the same warning message. It disappeared, when I added a hint to my EditText

    android:hint="Some explanation about the input..."
    
    0 讨论(0)
  • 2020-12-09 02:21

    The labelFor is an attribute for accessibility options. You assign this to a label so that if, on a form , user clicks a textedit field , android can know what to read (TalkBack) to user.

    The id you assigned to it doesn't seem to be a valid one. why there are two @id in the id? Use ids like this: @id/editText1

    0 讨论(0)
  • 2020-12-09 02:21

    It means that you probably should define a label for this edit text and link them using a labelFor inside that labels definition.

    example code:

    <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" />
    

    and it's not only for text views.

    0 讨论(0)
提交回复
热议问题