OStack程序员社区-中国程序员成长平台

标题: ios纵向和横向模式 [打印本页]

作者: 菜鸟教程小白    时间: 2022-12-12 19:30
标题: ios纵向和横向模式

我有以下场景:

我从 appDelegate 做:

firstViewController = [[FirstViewController alloc] initWithNibName"FirstViewController" bundle:nil];
    UINavigationController *firstNavController = [[UINavigationController alloc]initWithRootViewController:firstViewController];

firstViewController - 只需要在纵向模式下

为了做到这一点,我做了:

- (BOOL)shouldAutorotateToInterfaceOrientationUIInterfaceOrientation)interfaceOrientation{
   return (interfaceOrientation == UIInterfaceOrientationPortrait);
}

- (BOOL)shouldAutorotate
{
   return NO;
}

- (NSUInteger)supportedInterfaceOrientations
{
   return UIInterfaceOrientationMaskPortrait;
}

firstViewController 我正在插入另一个 View Controller ,它需要同时具有纵向和横向功能。

secondViewController 按预期运行 - 在纵向和横向模式下

我也遇到了在横向模式下显示的 firstViewController 的问题,虽然我已将其限制为纵向模式。我做错了什么?



Best Answer-推荐答案


在您的项目中使用以下方法添加 UINavigationController 类别

#import "UINavigationController+MyNavigation.h"

@implementation UINavigationController (MyNavigation)

-(BOOL)shouldAutorotate
{
    return YES;
}

-(NSUInteger)supportedInterfaceOrientations
{
    return UIInterfaceOrientationMaskPortrait | UIInterfaceOrientationMaskPortraitUpsideDown;
}

这解决了我的问题。

关于ios纵向和横向模式,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22017786/






欢迎光临 OStack程序员社区-中国程序员成长平台 (https://ostack.cn/) Powered by Discuz! X3.4