I have an NSMutableArray of UIImageViews that have been added as subviews of a particular view. When I replace a view like this: Code: UIImageView *tempview = [[UIImageView alloc] initWithImage:[UIImage imageNamed:@"background.png"]]; tempview.frame = CGRectMake(0, 0, 667, 920); [drawViewController.drawImage replaceObjectAtIndex:0 withObject:tempview]; I can see that the view is replaced, but doesn't redraw. Occasionally, this will cause the application to become unresponsive. I've tried stepping through the functions, but that doesn't seem to help. I tried `setNeedsDisplay` but that doesn't seem to work either. Is there something else I'm missing?