如何告诉我的代码要检查哪些标签?

时间:2013-04-10 00:57:50

标签: java android

我有这个代码来设置一些标签,我在设置两个标签后,将这些行添加到strings.xml:

<item type="id" name="KOLONA1"/>
<item type="id" name="KOLONA2"/>

a1.setTag(R.id.KOLONA1, labelsA.get(0).tag);

在我的onClickListener中,我有一些检查标签的代码:

if (buttonClicked.getTag().equals(button.getTag())) {

//some code
}

在这个特定的检查中,我的代码应该检查第二个,labelsA.get(0).tag标签,但它没有,它检查第一个,R.id.KOLONA。如何告诉我的代码要检查哪些标签?

![在此处输入图片说明] [1]

[1]:

2 个答案:

答案 0 :(得分:0)

您可以使用View.getTag(int tag)按ID获取特定代码。我认为你要找的是button.getTag(R.id.KOLONA1)。可以在此处找到文档:http://developer.android.com/reference/android/view/View.html#getTag(int)

答案 1 :(得分:0)

像这样简单的东西可能就是你想要的东西:

if (buttonClicked.getId() == button.getId()
     && buttonClicked.getTag().equals(button.getTag())) {

    //some code
}

或者如果你感到非常偏执:

if (buttonClicked.getId() == button.getId()
     && buttonClicked.getParent() == button.getParent()
     && buttonClicked.getTag().equals(button.getTag())) {

    //some code
}

更新:我刚刚意识到getTag()是多余的,因为如果它们具有相同的ID且相同的父级必须相同,那么:

if (buttonClicked.getId() == button.getId()
     && buttonClicked.getParent() == button.getParent()) {

    //some code
}