2012-11-21 11:54:50.607 [10152:907] Current Image: <UIImage: 0x20819ae0>
2012-11-21 11:54:50.608 [10152:907] EmptyMark Image: <UIImage: 0x20819ae0>
应用程序输入后台并返回前台。iOS应用程序进入后台后iOS UiImage返回不同的签名
2012-11-21 11:54:57.040 [10152:907] Current Image: <UIImage: 0x20819ae0>
2012-11-21 11:54:57.042 [10152:907] EmptyMark Image: <UIImage: 0x208cc580>
我相同的图像“emptymark.png
”它被添加到一个按钮,“当前图像”(登录)比较实际的文件“EmptyMark图像”(已登录),当我之后回来的应用已经在后台EmptyMark返回不同于“当前图像”(按钮上的图像)。
我得到“EmptyMark图像”使用[UIImage imageNamed:@"emptymark.png"]
我应该抱着一个参考emptymark.png
所有的时间而不是试图从文件进行比较?
发现这个问题:因为我相信你知道,相同的问题并不是检查内存地址变化的好方法。 http://stackoverflow.com/questions/11216167/objective-c-comparing-an-image-against-another-image-that-has-been-previously-s – KDM
我不认为解决方案建议在这种情况下是好的。使用'if([UIImagePNGRepresentation(blackImage)isEqualToData:UIImagePNGRepresentation(greenImage)])'必须从两个图像创建NSData,然后必须比较哪些对于应用程序性能不利,如果图像较大。 – iDev