I need you to humor me during this question. This is somewhat pseudo code because the actual situation is quite complex. I wouldn’t load an image this way unless I needed to. Assume that I need to.
NSURL *bgImageURL = [NSURL URLWithString:@"https://www.google.com/images/srpr/logo3w.png"];
UIImage *img = [UIImage imageWithData:[NSData dataWithContentsOfURL:bgImageURL]];
[self.anIBOutletOfUIImageView setImage:img];
but I crash out with
-[__NSCFData _isResizable]: unrecognized selector sent to instance 0x9508c70
How can I load an image from a URL into NSData and then load that NSData into a UIImage and set that UIImage as the image for my UIImageView?
Again, I realize this sounds like nonsense, but due to an image caching system I’m using I have to do things this way 🙁
I plugged this code into a new, iPad “Single view application” template:
I got the image to load up properly. I even tried different content modes for the UIImageView, and they all worked as expected.
If you start from scratch, do you get the same problem?
The error message indicates that you’re sending a message of “_isResizable” to an NSData object. Maybe you’re inadvertently setting the
UIImageView‘simageproperty equal to theNSDatainstead of theUIImage.Edit/Update
I even went back and tried different versions of “one-lining” the code to see if any of that mattered, since my “working” copy was slightly altered from your non-working copy. I couldn’t get the code to break. My guess would be that the code in question isn’t broken, but something nearby is…