我想限制一個視圖控制器在UINavigationController之上。要做到這一點我已經創建了一個UINavigationController子類,並實現2種方法我想限制一些視圖控制器在ios6橫向
- (BOOL)shouldAutorotate {
return [[self.viewControllers lastObject] shouldAutorotate];}
- (NSUInteger)supportedInterfaceOrientations {
return [[self.viewControllers lastObject] supportedInterfaceOrientations];}
我要上的UINavigationController(這是根視圖控制器)的頂部的第一個視圖 - 控制應在肖像模式和下一個視圖控制器,我」從根視圖控制器推出的應該是風景模式(僅限)。
所以我重寫這兩個視圖控制器中的這兩種方法。 在根視圖控制器
- (BOOL)shouldAutorotate {
return NO;}
- (NSUInteger)supportedInterfaceOrientations {
return UIInterfaceOrientationMaskPortrait;}
在下一視圖控制器
- (BOOL)shouldAutorotate {
return YES;}
- (NSUInteger)supportedInterfaceOrientations {
return UIInterfaceOrientationMaskLandscape;}
其工作良好,但不能完全。我第一次將視圖控制器按肖像模式顯示(不限制爲如我所期望的那樣),並且一旦我旋轉設備/模擬器並且其工作正常並且僅限於橫向模式。
任何人都可以幫忙嗎?
感謝您的快速回復suresh,但在ios6中,該方法不會調用。這就是爲什麼我們使用其他兩種方法。 – MohanVydehi
對不起,我沒有注意到。 –