【问题标题】:Transitioning to portrait rotation within a UINavigationController在 UINavigationController 中转换为纵向旋转
【发布时间】:2023-08-17 00:24:02
【问题描述】:

我有一种情况,需要将仅纵向模式视图推送到导航控制器中,该控制器将横向模式视图作为其当前视图。

虽然我已经重新实现了

-(BOOL)shouldAutorotateToInterfaceOrientation:(UIInterfaceOrientation)interfaceOrientation   {
    // Return YES for supported orientations
    return (interfaceOrientation == UIInterfaceOrientationPortrait);
}

但它仍在横向模式下推动视图。我也尝试了以下方法,但即使这样也行不通。

- (void)viewDidAppear:(BOOL)animated {
    [super viewDidAppear:animated];
    [[UIApplication sharedApplication] setStatusBarOrientation:UIInterfaceOrientationPortrait animated:YES];
}

我尝试查看其他相关问题,但没有找到任何东西。

知道如何解决这个问题吗?

谢谢!

【问题讨论】:

    标签: iphone uinavigationcontroller uiinterfaceorientation


    【解决方案1】:

    最好的办法是只使用modal view controller,而不考虑设备方向,强制视图为纵向。

    如果您想在其周围包裹一个导航控制器以保持样式一致,请查看 Apple 的 Core Data Recipes example,了解他们在添加新配方时如何做到这一点。

    【讨论】: