Java Android:比较ImageButton和资源中的图像

Java Android:比较ImageButton和资源中的图像,java,android,bitmap,drawable,Java,Android,Bitmap,Drawable,我有一个ImageButton,它的背景设置如下: final ImageButton[][] gridButton = new ImageButton[5][5]; gridButton[0][0] = (ImageButton) findViewById(R.id.imageButton1); gridButton[0][0].setImageResource(ButtonIcon.l[0]); //ButtonIcon.l[0] is an image ID from my resourc

我有一个ImageButton,它的背景设置如下:

final ImageButton[][] gridButton = new ImageButton[5][5];
gridButton[0][0] = (ImageButton) findViewById(R.id.imageButton1);
gridButton[0][0].setImageResource(ButtonIcon.l[0]); //ButtonIcon.l[0] is an image ID from my resources folder.

gridButton[0][0].setOnClickListener(new View.OnClickListener() {
        ButtonIcon justAnObject = new ButtonIcon();
        @Override
        public void onClick(View v) {
            int newId = justAnObject.changeIconId(((BitmapDrawable)gridButton[0][0].getDrawable()).getBitmap());
//          int newId = justAnObject.changeIconId(gridButton[0][0].getDrawable());
            gridButton[0][0].setImageResource(newId);

        }
    });
在buttonIcon类中,我有一个进行比较的方法:

public int changeIconId(Bitmap object){
    if (object == ((BitmapDrawable) getResources().getDrawable(R.drawable.load0)).getBitmap()){
        return R.drawable.load1;
    }
    else return R.drawable.straight0;
}
所有ID都引用“我的资源”文件夹中的图像。我不太清楚如何处理这个问题

谢谢

比较两个位图的步骤

public boolean equals(Bitmap bitmap1, Bitmap bitmap2) {
    ByteBuffer buffer1 = ByteBuffer.allocate(bitmap1.getHeight() * bitmap1.getRowBytes());
    bitmap1.copyPixelsToBuffer(buffer1);

    ByteBuffer buffer2 = ByteBuffer.allocate(bitmap2.getHeight() * bitmap2.getRowBytes());
    bitmap2.copyPixelsToBuffer(buffer2);

    return Arrays.equals(buffer1.array(), buffer2.array());
}
*更新后*

比较两种抽绳方式
通常,您想比较两个位图,对吗?这可能会帮助您,谢谢。我试试看。有没有类似的方法来比较可抽式服装?或者我应该将它们转换为位图并使用这种方式(就像我尝试的那样)?
Bitmap bitmap = ((BitmapDrawable)fDraw).getBitmap();
Bitmap bitmap2 = ((BitmapDrawable)sDraw).getBitmap();

if(bitmap == bitmap2)
    {
        //Code blcok
    }