在其他人的视图控制器中禁用自动旋转



我正在使用navigationController来推送别人的视图控制器。我可以使用 shouldAutorotate 在我的视图中禁用旋转,但这不适用于推送视图,这是由其他人实现的,我无法触摸。有什么办法可以做到这一点吗?例如,通过禁用导航控制器的任何子视图中的任何旋转?谢谢!

推送你自己的 vc 子类,一个实现supportedInterfaceOrientations的子类,如下所示:

// .h
#import "ThirdPartyVC.h"
@interface  MyNonRotatingThirdPartyVC : ThirdPartyVC
@end
// .m
@implementation MyNonRotatingThirdPartyVC
- (NSUInteger)supportedInterfaceOrientations {
    return UIInterfaceOrientationMaskPortrait;
}
- (UIInterfaceOrientation)preferredInterfaceOrientationForPresentation {
    return UIInterfaceOrientationPortrait;
}

分配并呈现我的非旋转第三方VC而不是原始VC.

最新更新