【问题标题】:Swift - Permanent View Controller Segue (outside of Navigation Controller)Swift - 永久视图控制器 Segue(在导航控制器之外)
【发布时间】:2020-04-24 11:28:18
【问题描述】:

在将一个视图控制器永久移动到另一个视图控制器时遇到一些麻烦。正常的转场似乎都有一个“返回”选项。

我知道我可以将 VC 嵌入导航控制器并创建一个自定义 segue 来重写层次结构/更改根 VC

class ReplaceSegue: UIStoryboardSegue {

    override func perform() {
        source.navigationController?.setViewControllers([self.destination], animated: false)
    }
}

但我想避免使用导航控制器,因为当我稍后添加 SWRevealViewController 时它会混淆。

我可以/应该更改情节提要 VC(即在 AppDelegate 之外)吗?

谢谢 - 如果这是一个“初学者”问题,我们深表歉意

【问题讨论】:

    标签: swift uiviewcontroller segue uistoryboard uistoryboardsegue


    【解决方案1】:

    您可以更改主窗口的 rootViewController:

    self.window.rootViewController = vc
    

    或者您可以简单地将 vc 的 modalPresentationStyle 设置为全屏(这本身没有“返回”选项,只有您可以通过调用关闭来关闭它)

    
    let vc = UIViewController()
    vc.modalPresentationStyle = .fullScreen
    

    或从情节提要中将其演示样式更改为全屏。

    【讨论】:

    • PresentationStyle 正是我所需要的。不敢相信我错过了!感谢您的帮助
    猜你喜欢
    • 1970-01-01
    • 2015-06-22
    • 1970-01-01
    • 1970-01-01
    • 2014-04-10
    • 2014-10-10
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多