【发布时间】:2022-01-12 08:43:56
【问题描述】:
我想获得 topMostVC 所以我做了这个功能:
func topMostViewController() -> UIViewController {
if let presented = self.presentedViewController {
return presented.topMostViewController()
}
if let navigation = self as? UINavigationController {
return navigation.visibleViewController?.topMostViewController() ?? navigation
}
if let tab = self as? UITabBarController {
return tab.selectedViewController?.topMostViewController() ?? tab
}
return self
}
然后使用:
AppDelegate.shared.window?.rootViewController?.topMostViewController()
但我的问题是当 UIAlertController 在屏幕上显示时,它返回 UIAlertController,而不是我期望的 viewcontroller
谁能告诉我如何避免 UIAlertController,谢谢
【问题讨论】:
标签: swift uiviewcontroller topmost