这是为什么有时不工作

这是为什么有时不工作

本文介绍了这是为什么有时不工作?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我的应用程序使用以下code来比较imagebuttons图片:

My app uses the following code to compare images on imagebuttons:

的onCreate

redsquare = getResources().getDrawable(R.drawable.redsquare);
bitred = ((BitmapDrawable) redsquare).getBitmap();

的onClick
v 是按钮点击)

ClickGround = v.getBackground(); //Get the background of button clicked
//the bitmap background of the button clicked
BitClick = ((BitmapDrawable) ClickGround).getBitmap();

然后,后来在onClick的,我检查,如果用户在点击redSquare通过执行此操作:

Then, later on in the onClick, I check if the user clicked on the redSquare by doing this:

if (BitClick == bitred) { //Make sure it is the red square that user clicked
}

我已经测试过它在我的仿真器和华为的手机,它工作正常。当我测试了我的其他的手机(LG G3)上,if语句不通过。为何结果不同? 与图像被莫名其妙地在我的手机搞砸?

推荐答案

可以,我做你的比较code的微小变化,使其与所有设备正常工作。

You Can, I'm making a small change in your comparison code to make it work with all devices.

Bitmap BitRed = ((BitmapDrawable)getResources().getDrawable(R.drawable.redsquare)).getBitmap();

Bitmap BitClick = ((BitmapDrawable) v.getBackground()).getBitmap();

if (BitClick.sameAs(BitRed))
{
    //Your Button with Red Square Clicked
}

请参阅更多细节功能。
希望这有助于你。

Please refer SameAs function for more details.Hope this help you.

这篇关于这是为什么有时不工作?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持!

08-24 16:31