简体   繁体   中英

How to subclass Navigation Controller when using storyboards?

I'm using storyboards in interface builder using the Xcode menu 'Editor...Embed in...Navigation Controller'.

It seems that in iOS 6 you have to subclass the UINavigationController to allow all orientations, with

- (NSUInteger)supportedInterfaceOrientations {
    return (UIInterfaceOrientationMaskAll   );
}

But how do I subclass the UINavigationController with a storyboard app as there is no reference to it in the code?

You can select the navigation controller scene's navigation controller from the storyboard:

在此输入图像描述

And then use the identity inspector on the right to change the class:

在此输入图像描述

For instance change the "Class" there to MyCustomNavigationController and then just create a new class in your project called MyCustomNavigationController :

MyCustomNavigationController.h :

#import <UIKit/UIKit.h>

@interface MyCustomNavigationController : UINavigationController
@end

MyCustomNavigationController.m :

@implementation MyCustomNavigationController

- (NSUInteger)supportedInterfaceOrientations {
    return UIInterfaceOrientationMaskAll;
}

... any other methods you want ...

@end

The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM