Не то чтобы это та же проблема, но я обнаружил похожую проблему при добавлении 2 подпредставлений в моем приложении: метод didFinishLaunchingWithOptions. Поскольку ваша ссылка выше использует [self.view addSubview: view ], я понимаю, что это означает, что self не является вашим UIWindow. При добавлении дополнительного контроллера представления в ваше окно делегата приложения (UIWindow) второй контроллер представления НЕ будет получать никаких событий вращения и никогда не будет вращаться. Только первый контроллер представления, добавленный в UIWindow, будет вращаться. См .: Технические вопросы и ответы QA1688 Я полагаю, что это также влияет на представления, добавленные после первого представления, где первое представление впоследствии удаляется из супер-представления.
В итоге я последовал предложению, которое читал в другом месте, чтобы использовать отдельные представления для каждой ориентации, тем самым устраняя необходимость беспокоиться о изменении размера поведения. Как всегда, YMMV.