viewWillAppear (according to Paul Hegarty's CS193p lectures) is for geometry-related initializations. Since viewDidAppear follows viewWillAppear it makes sense that the bounds are correct here as well. The views bounds are not yet set in viewDidLoad.