Android ImageButton图片对比

Android ImageButton image comparison

我这里有这个小代码:

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 中的两个图像('drawables'?),就像这样:

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 图像以将其与之进行比较。有帮助吗?

使用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);
}