Android ImageButton图像比较

时间:2015-10-21 20:55:09

标签: android imagebutton

我这里有这个小代码:

MainActivity.java:

public void Images(View v)
{
    ImageButton i = (ImageButton) v;
    i.setImageResource(R.drawable.c4_pressed_button);
}

MainActivity.xml:

<ImageButton
            android:id="@+id/b1"
            android:layout_width="0dp"
            android:layout_height="match_parent"
            android:background="@android:color/transparent"
            android:contentDescription="@string/contentDescription"
            android:src="@drawable/c4_button" 
            android:onClick="Images"/>

我想要做的就是从ImageButton中比较两个图像(&#39; drawables&#39;?),就像那样:

public void Images(View v)
{
    ImageButton i = (ImageButton) v;
    if(xxxx == R.drawable.c4_pressed_button)
        i.setImageResource(R.drawable.c4_button);
    else i.setImageResource(R.drawable.c4_pressed_button);
}

而且我不知道我必须在xxxx中进行比较。 我知道R.drawable.c4_pressed_button是一个Int,但我不知道如何让ImageButton图像与它进行比较。有什么帮助吗?

1 个答案:

答案 0 :(得分:1)

使用setTag()getTag()方法

public void Images(View v)
{
ImageButton i = (ImageButton) v;
i.setImageResource(R.drawable.c4_pressed_button);
i.setTag("R.drawable.c4_pressed_button");
}

然后进行比较

public void Images(View v)
{
ImageButton i = (ImageButton) v;
String imageName = (String) i.getTag();
if(imageName.equals("R.drawable.c4_pressed_button"))
    i.setImageResource(R.drawable.c4_button);
else i.setImageResource(R.drawable.c4_pressed_button);
}