UI 元素在 segue 创建后改变位置
UI Elements change position after segue creation
我正在使用 Swift 创建我的第一个 iOS 应用程序。
第一个 viewController 上面有一些按钮。
我需要在单击 a 按钮时导航到第二个 viewController。为此,我正在创建一个从按钮到第二个 viewController.
的 segue
创建推送转场后,第二个 viewController 中的所有 UI 元素都会移动它们的位置,如下所示:
在创建 segue 之前:
然后,一旦创建了 segue:
您可能会看到来自第二个视图控制器的所有 UI 个元素都改变了它们的位置。
我应该怎么做才能避免这种情况?让所有元素都在原来的位置应该注意什么?
您应该将第二个视图控制器的呈现样式更改为全屏
你 ui 元素没有改变位置,是 iOS 13 中新的呈现样式改变了并且看起来不同。您可以通过两种方式防止这种情况。
在 storyBoard 中转到 secondvc 和
select 全屏或在您的演示后按代码显示或继续显示
let vc = UIStoryBoard("Main",bundle, nil).instatiateViewController(withIdentifier: "secondViewControllerStoryBoardIdentifier") as! SecondViewController
vc.modalPresentationStyle = .fullScreen
这里是演示文稿,如果不是 segue
self.present(vc,animated:true)
将演示文稿更改为全屏。
enter image description here
我正在使用 Swift 创建我的第一个 iOS 应用程序。
第一个 viewController 上面有一些按钮。
我需要在单击 a 按钮时导航到第二个 viewController。为此,我正在创建一个从按钮到第二个 viewController.
的 segue创建推送转场后,第二个 viewController 中的所有 UI 元素都会移动它们的位置,如下所示:
在创建 segue 之前:
然后,一旦创建了 segue:
您可能会看到来自第二个视图控制器的所有 UI 个元素都改变了它们的位置。
我应该怎么做才能避免这种情况?让所有元素都在原来的位置应该注意什么?
您应该将第二个视图控制器的呈现样式更改为全屏
你 ui 元素没有改变位置,是 iOS 13 中新的呈现样式改变了并且看起来不同。您可以通过两种方式防止这种情况。
在 storyBoard 中转到 secondvc 和
select 全屏或在您的演示后按代码显示或继续显示
let vc = UIStoryBoard("Main",bundle, nil).instatiateViewController(withIdentifier: "secondViewControllerStoryBoardIdentifier") as! SecondViewController
vc.modalPresentationStyle = .fullScreen
这里是演示文稿,如果不是 segue
self.present(vc,animated:true)
将演示文稿更改为全屏。 enter image description here