比较按钮背景图像

时间:2015-04-10 18:31:03

标签: java android button if-statement

我无法比较按钮背景图片,这是我的代码

if (temp[0].getBackground() == temp[1].getBackground()) {

        ...
    }

因此,当我运行代码并且temp [0]和temp [1]的背景来自同一个drawable时,它表示它们彼此不相等(==)但是如果我这样做了

if (temp[0].getDrawingCacheBackgroundColor() == temp[1].getDrawingCacheBackgroundColor()) {

        ...
    }

他们会彼此相等,但如果我有另一个带有不同抽签的按钮,它会传递,因为那些也是我不想要的。如何制作if语句来比较按钮的背景图像?

temp []是一个包含Buttons的数组。

2 个答案:

答案 0 :(得分:0)

使用.equals()。 ==运算符仅检查两个引用是否相同。 equals函数比较对象。假设Android正确实现了.equals,这应该可行。

答案 1 :(得分:0)

这归结为:在Java中,使用.equals()而不是==来比较对象;后者应仅用于比较基元(intlong ...等)或对象引用。