【发布时间】:2019-02-22 17:36:33
【问题描述】:
所以,我今天已更新到 Xcode 10 和 iOS 12,现在当我从 UINavigationController 调用 topViewController 时收到以下错误消息:
“topViewController”的模糊使用
if let myVC = navigationController.topViewController as? MyViewController {}
即使下面的代码运行良好。
if let myVC = navigationController.visibleViewController as? MyViewController {}
有谁知道 iOS 12 对此有何变化?
【问题讨论】:
-
topViewController 在 iOS12 中没有变化。我在Xcode10、iOS12中测试过,没有任何问题。你的
navigationController是什么? -
UINavigationController
-
您是否还有另一个名为
topViewController的变量? -
实际上有一个扩展
UINavigationController的类和一个UIViewController的扩展,它有一个名为topViewController的变量。这是遗留代码,所以我不确定它为什么会这样创建。但是 Xcode 10/iOS 12 中的哪些变化使这段代码不再工作?