Got rotation to work on iPhone. Required using viewWillAppear:animated and willAnimateRotationToInterfaceOrientation:duration: instead of viewWillLayoutSubviews.