mainwindow shouldAutoRotateToInterfaceOrientation - PullRequest
0 голосов
/ 16 июля 2011

В моем mainWindow.xib у меня есть эта настройка.

1) UINavigationController, содержащий несколько viewController.

2) UIViewController, содержащий scrollview, содержащий несколько кнопок.

IЯ определил их в Appdelegate.h, чтобы получить элемент управления и прикрепил их к окну

[window addSubview:navigationController.view];      // navigationController
[window addSubview:container.view];                 //scrollview
[window makeKeyAndVisible];

. Теперь я использую тот же стандартный код для InterfaceOrientation (в AppDelegate и во всех последующих viewControllers в нем.

- (BOOL)shouldAutorotateToInterfaceOrientation:(UIInterfaceOrientation)interfaceOrientation {

return (interfaceOrientation==UIInterfaceOrientationPortrait ||interfaceOrientation==UIInterfaceOrientationPortraitUpsideDown) ? YES : NO;

}

NavigationController и его последующие viewControllers вращаются, как и ожидалось, но просмотр прокрутки - нет. Его положение фиксировано.

Как можно вращать container.view, то есть полосу прокрутки с кнопками вместе сnavigationController, используется ли какой-либо оператор If или определяется отдельный класс для просмотра прокрутки.

1 Ответ

0 голосов
/ 16 июля 2011

Если вы хотите событие изменения ориентации в главном окне, вы можете использовать метод ниже в делегате приложения

- (void)application:(UIApplication *)application willChangeStatusBarOrientation:(UIInterfaceOrientation)newStatusBarOrientation duration:(NSTimeInterval)duration

проверьте также setAutoresizingMask: метод и соответствующие маски изменения размера.

...