【发布时间】:2013-05-31 20:15:42
【问题描述】:
我有一个 UIImageView,其中包含用户的封面照片。通过 xcode IDE,我添加了一个占位符图像,用作股票封面照片。当用户单击封面照片时,我需要一种方法来判断 UIImageView 中的图像是股票封面照片还是用户添加的另一张照片。图像永远不会为零。目前我正在通过将当前封面照片的图像数据与生成的图像数据进行比较来从股票封面照片图像文件中创建图像。
这就是我所拥有的:
if ([UIImagePNGRepresentation(_coverPhoto.image) isEqualToData:UIImagePNGRepresentation([UIImage imageNamed:@"stockCoverPhoto.png"])])
{
[self loadPhoto:1];
}
当应用程序在同一会话中关闭并重新打开时,将 _coverPhoto.image 与 UIImage imageNamed:@"stockCoverPhoto.png" 进行比较会产生错误的结果。必须有更好的方法来做到这一点,我需要我的代码尽可能高效,并且似乎没有必要将两个 NSData 结构相互比较。
【问题讨论】:
-
为什么不在IB中的
UIImageViewnil中制作图片,然后当你的viewWillAppear:方法被调用时,检查UIImageView的.image属性是否为nil,如果是,添加占位符图片,如果不是nil,则知道是用户添加的图像。 -
有趣的方式,我会尝试看看它是否有效(不明白为什么它不会)并回复你@msgambel