2.22. Displaying Images with UIImageView

Problem

You would like to display images to your users on your app’s UI.

Solution

Use the UIImageView class.

Discussion

The UIImageView is one of the least complicated classes in the iOS SDK. As you know, an image view is responsible for displaying images. There are no tips or tricks involved. All you have to do is to instantiate an object of type UIImageView and add it to your views. Now, I have a picture of Apple MacBook Air and I would like to display it in an image view. Let’s start with our view controller’s header file:

#import <UIKit/UIKit.h>

@interface Displaying_Images_with_UIImageViewViewController
           : UIViewController

@property (nonatomic, strong) UIImageView *myImageView;

@end

Go ahead and instantiate the image view and place the image in it:

- (void)viewDidLoad{
  [super viewDidLoad];

  self.view.backgroundColor = [UIColor whiteColor];

  UIImage *macBookAir = [UIImage imageNamed:@"MacBookAir.png"];
  self.myImageView = [[UIImageView alloc] initWithImage:macBookAir];
  self.myImageView.center = self.view.center;
  [self.view addSubview:self.myImageView];

}

Now if we run the app, we will see something similar to Figure 2-65.

An image view that is too big to fit on the screen

Figure 2-65. An image view that is too big to fit on the screen

I should mention that the MacBook Air image that I’m loading into this image view is 980×519 pixels and as you can see, it certainly doesn’t fit into the iPhone screen. ...

Get iOS 6 Programming Cookbook now with the O’Reilly learning platform.

O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.