Android: View.getTag/setTag and IllegalArgumentException

前端 未结 3 822
日久生厌
日久生厌 2021-02-12 23:55

Yes, I know you need a unique resource id when calling the version of these functions that requires a key, but I cannot for the life of me figure out how to create a resource id

相关标签:
3条回答
  • 2021-02-13 00:30

    From the Javadoc:

    The specified key should be an id declared in the resources of the application to ensure it is unique.

    So you can't just make up values and place them in a local variable.

    Every resource you create whether it's a string (R.string.*), or a layout (R.layout.*) or an individual View (R.id.*) can have an ID. This is something you must be doing already.

    If you do need to store multiple objects against a single View, then you need to use the R.id variant as a key, like someView.setKey(R.id.my_key_1, someObject).

    0 讨论(0)
  • 2021-02-13 00:31

    You can use this code :

    <resources xmlns:android="http://schemas.android.com/apk/res/android">
      <item name="TAG_ONLINE_ID" type="id"/>
    </resources>
    
    0 讨论(0)
  • 2021-02-13 00:54

    To create resource ID, which can be used identically to the ones you set within XML (with @+id), add

    <resources>
        <item type="id" name="myId"/>
    </resources>
    

    in XML in res/values/.

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