метод

я есть контроллер панели вкладок с этим кодом

- (BOOL)shouldAutorotateToInterfaceOrientation:(UIInterfaceOrientation)interfaceOrientation {
    // Return YES for supported orientations
    //NSLog(@"object type %@"  ,nil);
    if([[self navigationController ] isKindOfClass:[UINavigationController class]])
        if([[[self navigationController] visibleViewController] isKindOfClass:[SLImageViewController class]])
            return YES;
    return (interfaceOrientation == UIInterfaceOrientationPortrait);
}

Мне нужен любой экземпляр класса SLImageViewController для поворота, но ни один из остальных. Я сделал все, что могу придумать, например, добавив return YES в SLImageViewController и другие исправления.

Может кто-нибудь сказать мне, что я делаю не так?

 rgeorge21 янв. 2011 г., 06:01
Код выше из подкласса UITabBarController или UIViewController в одной из вкладок? Также ... это правильное понимание вашего вопроса: вы хотите, чтобы автоповорот происходил, когда отображается одна из ваших вкладок, а не когда одна из других есть?
 Chris Truman22 янв. 2011 г., 00:38
Я хочу, чтобы только SLImageViewControllers вращались, когда они видны. Все остальные должны оставаться портретными.
 Chris Truman22 янв. 2011 г., 00:38
Это из подкласса UITabBarController
 DZenBot12 мар. 2012 г., 21:27
Это сработало для меня! Спасибо вам большое! Мне не нужно было создавать подкласс UiTabBarController. Я просто поместил этот код на контроллер, который хотел иметь автоповорот.

Ответы на вопрос(1)

Решение Вопроса

установка ориентации statusBar наviewWillAppear а такжеviewWillDisappear

-(void) viewWillAppear:(BOOL)animated { [super viewWillAppear: animated]; [[UIApplication sharedApplication] setStatusBarOrientation: UIInterfaceOrientationLandscapeRight]; }

-(void) viewWillDisappear:(BOOL)animated { [super viewWillDisappear: animated]; [[UIApplication sharedApplication] setStatusBarOrientation: UIInterfaceOrientationPortrait]; }

и вращение вида вручную:self.view.transform = CGAffineTransformMakeRotation(M_PI/2);

Представление этого представления модально вызоветshouldAutorotateToInterfaceOrientation метод

Ваш ответ на вопрос