Đây là phiên bản cập nhật của @Kreiri, tôi đã đưa ra phương pháp và lỗi logic cố định:
- (BOOL)containsImage:(UIImage*)image {
BOOL result = NO;
CGImageRef cgref = [image CGImage];
CIImage *cim = [image CIImage];
if (cim != nil || cgref != NULL) { // contains image
result = YES;
}
return result;
}
Một UIImage chỉ có thể dựa trên CGImageRef hoặc CIImage. Nếu cả hai là không có nghĩa là không có hình ảnh. Ví dụ sử dụng phương thức đưa ra:
if (![self containsImage:imageview.image]) {
[self setImageWithYourMethod];
}
hy vọng nó sẽ giúp ai đó.
Cảm ơn bạn Rất nhiều, đó là công việc hoàn hảo! – Jonathan
Nhưng [image CIImage]; chỉ khả dụng trong iOS 5. Còn khoảng 4.3? –
không hoạt động như cim trả về nil – hii