0

当当前图像等于某个图像视图时,我创建了一些代码来在图像视图中显示图像。它可以正常工作,但是如果我决定退出应用程序,然后再重新进入它,则以某种方式看不到当前图像并且比较不再起作用。

if (imageview25.image == [UIImage imageNamed:@"BLUEBOXPUNT.png"]){
            key25.hidden = NO;
        }

所以这可行,但是当我离开应用程序并返回时,它看不到图像等于 BLUEBOXPUNT.png

有没有其他方法可以做到这一点或在Java中做类似的事情我会做imageview25.getImage。我认为那会奏效。

4

2 回答 2

3

您的比较逻辑是检查两个图像对象是否具有相同的地址。这仅在图像保留在缓存中时才有效。内存警告很可能会导致您在切换应用程序时看到的相同问题。

如果你想关联图像和它们的文件名,我认为你需要自己做,可能使用一个键入名称的字典。

于 2012-11-25T13:53:13.790 回答
0

如果您需要显示多个图像。一种更简单的方法是使用多个UIImageView,它们的大小相同,位置相同。但每个都显示不同的图像。然后你可以显示你需要的并隐藏其他(或bringSubviewToFront)。

如果您确实需要比较两个图像:

Cocoa Touch - 比较图像

开放式CV

于 2012-11-25T13:52:28.783 回答