Xcode 11.1 视图控制器在模态呈现时在当前 VC 下可见

Ter*_*Dev 2 xcode interface-builder viewcontroller presentmodalviewcontroller segue

Xcode 自动更新,现在我的注册屏幕视图控制器显示在我转换到的当前视图控制器下方。查看屏幕截图我该如何解决这个问题?

如果我创建一个 segue 并使用 Interface Builder 选择当前模式,那么当我运行该应用程序时,我现在将在当前屏幕下方看到上一个屏幕。在更新之前这从来都不是问题。(我在整个应用程序中使用相同的背景,因此我的大多数视图控制器背景都设置为透明。)

另外,我认为这是相关的,当我在 Xcode 中查看故事板并将视图设置为使用 iPhone 8 Plus 时,它显示了一个以前不存在的浅灰色圆角矩形。查看故事板布局 当我运行应用程序时,我的大多数视图控制器现在都被限制为这种形状并且不再全屏。请参阅此处的示例 我的设置视图控制器使用白色背景,因此您可以更轻松地看到我在说什么。这个VC曾经是全屏的,没有向下移动并且在顶部圆角。有任何想法吗?

Xcode 11.1 针对 iOS 12.1

小智 6

在 iOS 13 中,如果您有任何 Storyboard Segue,请转到 Storyboard,并且您需要将kind属性设置为Present Modally并将Presenter 属性设置为Full Screen

对于以编程方式使用Swift

let vc = UIViewController()
vc.modalPresentationStyle = .fullScreen 
self.present(vc, animated: true, completion: nil)
Run Code Online (Sandbox Code Playgroud)

对于Objective-C

UIStoryboard *story = [UIStoryboard storyboardWithName:@"Main" bundle:nil];
UIViewController *vc = [story instantiateViewControllerWithIdentifier:@"identifier"];
vc.modalPresentationStyle = UIModalPresentationFullScreen ;
[self presentViewController:vc animated:YES completion:nil];
Run Code Online (Sandbox Code Playgroud)