У меня была похожая проблема.Вы можете просто проверить ориентацию:
UIViewController* vc = //your current view controller
UIInterfaceOrientation orientation = vc.interfaceOrientation;
// NSLog(@"orientation %@",orientation);
if(orientation == UIInterfaceOrientationLandscapeRight){...}
внутри оператора if, чтобы настроить желаемый макет.Если у вас есть это в nib-файле, вы можете заменить весь вид на self.view = portairtView;которые могут быть определены и в том же перо.Вы можете сделать то же самое с внутренней частью представления.