我无法比较按钮背景图片,这是我的代码
if (temp[0].getBackground() == temp[1].getBackground()) {
...
}
因此,当我运行代码并且temp [0]和temp [1]的背景来自同一个drawable时,它表示它们彼此不相等(==)但是如果我这样做了
if (temp[0].getDrawingCacheBackgroundColor() == temp[1].getDrawingCacheBackgroundColor()) {
...
}
他们会彼此相等,但如果我有另一个带有不同抽签的按钮,它会传递,因为那些也是我不想要的。如何制作if语句来比较按钮的背景图像?
temp []是一个包含Buttons的数组。
答案 0 :(得分:0)
使用.equals()。 ==运算符仅检查两个引用是否相同。 equals函数比较对象。假设Android正确实现了.equals,这应该可行。
答案 1 :(得分:0)
这归结为:在Java中,使用.equals()
而不是==
来比较对象;后者应仅用于比较基元(int
,long
...等)或对象引用。