還沒有去很仔細地研究iOS6螢幕旋轉的控制方法,但是當務之急就是先將原本的專案恢復原狀。
原專案: 1. 各個View以shouldAutorotateToInterfaceOrientation方法來控制是否支援螢幕旋轉。
2. 從一開始的UIResponder就以UINavigationController裝進第一個UIViewController。
3. 專案雖然View很多,但是並沒有哪一個View特別指定只知原某個方向,換句話說每一個View都可以轉來轉去。
因為上面的第三點,所以改起來也相對簡單。
方法:
1. 原本在UIResponder中使用addSubview來將UINavigationController放進去。
[self.window addSubview:navigator.view];
但現在必須使用setRootViewController的方法,才能正確支援旋轉。
[self.window setRootViewController:navigator];
2. 在第一個推進UINavigationController的View加入兩個方法
-(BOOL)shouldAutorotate {
return YES;
}
- (NSUInteger)supportedInterfaceOrientations
{
return UIInterfaceOrientationMaskPortrait;
}
如此之後再推進UINavigationController的View也都會支援螢幕旋轉,但對於各別View要分別支援不同的螢幕方向就必須要去細讀iOS6的官方文件了。