如何将整型标签设置为xml布局文件中的一个小部件?

我有简单的布局,但我只能设置string标记。 如何设置整数标记?

<ImageView android:layout_width="wrap_content" android:layout_height="wrap_content" android:tag="1" android:src="@drawable/image" /> 

UPDATE

我发现如何在xml布局中设置Integer标签。 我们需要在任何xml资源文件中指定一个整型variables。 这应该是这样的:

RES /值/ value.xml:

 <?xml version="1.0" encoding="UTF-8"?> <resources> <integer name="int1">15</integer> <integer name="int2">1</integer> </resources> 

现在我们可以自由使用“@ integer / int1”或“@ integer / int2”作为XML部件的标签,例如:

 <ImageView android:layout_width="wrap_content" android:layout_height="wrap_content" android:tag="@integer/int2" android:src="@drawable/image" /> 

但是,在我的情况下,我喜欢以编程方式设置标签:)

Solutions Collecting From Web of "如何将整型标签设置为xml布局文件中的一个小部件?"

在XML中,你只能设置string。 但是在代码中你可以使用View.setTag(int value); 因为它需要Object。 要读取一个值,你需要把它转换为整型int value = (Integer)view.getTag();

从作者的编辑,我试图使用@integer/int2来设置标签为一个整数,但似乎getTag()返回标签作为一个String (至less在Jellybean中)。 Integer.parseInt(String)可以将一个String转换为一个Integer@integer/int2可以validation你的标记是一个合适的Integer 。 所以如果你想通过可能是最好的路线的XML把一个Integer放在标签中。 不利的一面,因为它使用parseInt它可能需要一点时间,而不是整个存储为整数。

我用下面的代码在xml中设置标签,稍后在代码中处理:

 <?xml version="1.0" encoding="UTF-8"?> <resources> <string name="item_tag">1</string> </resources> <!-- TextView with Tag --> <TextView android:id="@+id/item_with_tag" android:tag="@string/item_tag"/> // retrieve the tag int itemTag = Integer.valueOf((String) textView.getTag()); // itemTag == 1 

为此视图提供一个包含String的标签,稍后可以使用View.getTag()或通过View.getTag()search。

必须是string值,使用'\\;' 转义字符如'\\n''\\uxxxx'作为unicode字符。

有关更多信息,请转到android:标记