Я хочу разработать контроллер представления/представления, который автоматически показывает/скрывает подпредставление когда в альбомной ориентации. Я хочу, чтобы подпредставление к dissapear полностью и другие подпредставления заняли свое место.
Используя UIViewController, я написал код, который устанавливает свойство кадра подпредставлений, и обратитесь к нему:
- (void)willAnimateRotationToInterfaceOrientation:(UIInterfaceOrientation)interfaceOrientation duration:(NSTimeInterval)duration;
Это решает проблему большинство времен, но имеет проблемы, когда изменение ориентации происходит, когда представление не появляется. для обхода этого я также обращаюсь к методу изменения размеров:
- (void)viewWillAppear:(BOOL)animated;
но это имеет проблемы в некоторых редких случаях (вовлекающий UISearchDisplayController), таким образом, я также обращаюсь к методу изменения размеров
- (void)viewDidAppear:(BOOL)animated;
Как можно понять, я недоволен этим кодом, и я ищу лучше/больше производительный способ сделать это.
Какие-либо идеи?
Внутри
- (void)didRotateFromInterfaceOrientation:
(UIInterfaceOrientation)fromInterfaceOrientation
Скрыть
sub_view.hidden = YES;
Показать снова
sub_view.hidden = NO;