Question

I have a UIImageView. I get a UIImage from a URL. The image displays in the UIImageView, but I can't get it to center correctly. The UIImage is 80 x 68 pixels. The UIImaveView's size is 90 x 90. When I display the UIImage in the UIImageView the UIImage is shrunken so that it fits, although it is already smaller than the UIImageView. I have tried all the Content Modes in IB. Some of them shift the image up so that it is no longer in the UIImageView. None of this really makes sense to me. It seems that the UIImage should display inside the UIImageView fine if it is already within the required size. Any help would be great.

With Mode of Center on the UIImageView alt text http://img406.imageshack.us/img406/3696/screenshot20090915at447.png

With Mode of Aspect Fit on the UIImageView alt text http://img406.imageshack.us/img406/9373/screenshot20090915at447e.png

With Center, the size of the image seems correct but you can see that it goes out of the UIImageView which has a red UIView underneath it and is actually 2px on each side larger than the image view. But with the Aspect Fit, it makes the image smaller so that it fits inside. But I don't understand why it would make it smaller if it is already small enough to fit.

Was it helpful?

Solution

Sorry for wasting anyone's time. Turns out I didn't try all of the content modes. Seems that Content Mode of Bottom top works. This is backwards from how I understood it. Thanks for all your help.

OTHER TIPS

Try this. Change your UIImageView to be the same size as the UIImage that you are going to load, then position the UIImageView so that it's centered. This is the approach I've taken since I find UIImageView to be a bit funny to work with. Or, if you prefer, skip the UIImageView and just draw the UIImage using it's - (void)drawInRect:(CGRect)rect method.

Sounds like your image contains transparent areas, at least at the bottom, which shift the image off center.

Edit: Also, you should check that the resolution of the image is set to 72dpi.

Licensed under: CC-BY-SA with attribution
Not affiliated with StackOverflow
scroll top