Question: ```
UIImageView *mooshinLogo = [[UIImageView alloc] initWithImage:[UIImage imageNamed:@"mooshin.png"]];

```

I'm not sure if im instantiating my image correctly because i've been reading that imageNamed will not be emptied from the cache and should only be used for buttons and small icons. What about background images, and image galleries?

How do I implement UIImageView the right way?

Answer: 
`imageNamed:` method caches images that you load. In case of low memory conditions or memory warning that cache will be emptied.

If you want to show images in gallery it is better to use `imageWithContentsOfFile:` method as it doesn't cache the data.

In case of very big images you should use `CATiledLayer` to display your image using tiles.
No worries! The method `imageNamed` returns an **autoreleased** object, and it will do what you call "be emptied from cache" (i.e. its memory will be released) when it is not needed any more.