I've got an image which contains multiple layers. The user can set a picture as a layer. However when there isn't a picture available I'd like to have a replacement picture. I think I got two options: 1. check if the image (taken photo) is loaded into my directory. if not place the other image. 2. placing the other image (photo_icon.png) to the back of the UIImageView (image1). When a photo hasn't been taken the image becomes visible. Here's a snippit of my code so far. Code: NSString *docDir = [NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES) objectAtIndex:0]; NSString *pngFilePath = [NSString stringWithFormat:@"%@/photo1.png",docDir]; UIImage *img = [[UIImage alloc] initWithContentsOfFile:pngFilePath]; [image1 setImage:img]; image1.layer.cornerRadius = 15.0; image1.layer.masksToBounds = YES; CALayer *sublayer = [CALayer layer]; image1.layer.borderColor = [UIColor blackColor].CGColor; image1.layer.borderWidth = 3.5; [image1.layer addSublayer:sublayer]; CALayer *imageLayer = [CALayer layer]; imageLayer.frame = image1.bounds; imageLayer.cornerRadius = 10.0; imageLayer.contents = (id) [UIImage imageNamed:@"Upperlayer.png"].CGImage; imageLayer.masksToBounds = YES; [sublayer addSublayer:imageLayer]; replacing the image1 for the image which is needed I use: Code: CALayer *imageBackLayer = [CALayer layer]; imageBackLayer.frame = image1.bounds; imageBackLayer.cornerRadius = 10.0; imageBackLayer.contents = (id) [UIImage imageNamed:@"photo_icon.png"].CGImage; imageBackLayer.masksToBounds = NO; [sublayer insertSublayer:imageBackLayer below: image1.layer ]; Thanks in advance!