2012-03-19 7 views
0

, как вызвать методориентация Invoke изменяется на viewdidload

- (BOOL)shouldAutorotateToInterfaceOrientation:(UIInterfaceOrientation)interfaceOrientation { 
    // Return YES for supported orientations 
    return (interfaceOrientation == UIInterfaceOrientationPortraitUpsideDown) || 
    (interfaceOrientation == UIInterfaceOrientationPortrait); 
} 

в viewdidload.
первый вид не должен изменяться на пейзаж, а второй вид должен меняться на пейзаж. Однако, когда я изменяю пейзаж во втором представлении и возвращаюсь к первому виду, первое изображение остается в пейзаже, пока я не поверну устройство.

ответ

0

Вы можете оставить уведомление вручную:

[[NSNotificationCenter defaultCenter] postNotificationName:UIDeviceOrientationDidChangeNotification object:nil]; 
+0

не работает anyway.i нашел это из другого room.UIViewController * с = [[UIViewController Alloc] инициализации]; [self presentModalViewController: c animated: NO]; [self rejectModalViewControllerAnimated: NO]; [c release]; Это работает. – Albert

+0

Возможно, потому, что вы вызываете его из 'viewDidLoad', который не вызывается снова, когда вы выходите со второго представления. Если вы вызываете его из 'viewDidAppear', он должен работать. Я думаю, что это лучшее решение, чем представление и отклонение контроллера вида. Однако, если вам нравится ваше решение, отправьте его как ответ и примите его. – Saphrosit

Смежные вопросы