Java 比较两个drawable中的资源
我试着比较两种拖鞋,但没有成功。我做了一些研究,甚至有一个类似的问题,但没有帮助 在我的应用程序中,我使用Java 比较两个drawable中的资源,java,android,Java,Android,我试着比较两种拖鞋,但没有成功。我做了一些研究,甚至有一个类似的问题,但没有帮助 在我的应用程序中,我使用getCompoundDrawablesWithIntrinsicBounds在编辑文本的正确位置获取图像视图。 然后我需要检查哪个图像资源位于那里 这个小样本应该有用,不是吗?但它返回“不相等” getConstantState无法正常工作 如果您这样做: if(drawable1==drawable2){ 您正在比较对象的引用,但它不正确 将equals与getConstantState
getCompoundDrawablesWithIntrinsicBounds
在编辑文本的正确位置获取图像视图。
然后我需要检查哪个图像资源位于那里
这个小样本应该有用,不是吗?但它返回“不相等”
getConstantState无法正常工作 如果您这样做:
if(drawable1==drawable2){
您正在比较对象的引用,但它不正确
将equals与getConstantState()
方法一起使用
更新尝试与字节或像素进行比较是唯一有效的方法
// Usage:
drawable1.bytesEqualTo(drawable2)
drawable1.pixelsEqualTo(drawable2)
bitmap1.bytesEqualTo(bitmap1)
bitmap1.pixelsEqualTo(bitmap2)
您正在ImageView上应用这些绘图功能?我会尝试,尽管我不熟悉这种方法。它到底做什么?经过测试,SVG仍有假阳性案例。
// Usage:
drawable1.bytesEqualTo(drawable2)
drawable1.pixelsEqualTo(drawable2)
bitmap1.bytesEqualTo(bitmap1)
bitmap1.pixelsEqualTo(bitmap2)