Finding top view controller in swift
Posted on 11 Ekim 2018 in Programlama by admin
How to find visible view controller?
func topMostController() -> UIViewController { var topController = UIApplication.shared.keyWindow?.rootViewController while (topController?.presentedViewController != nil) { topController = topController?.presentedViewController } return topController! } func topViewController(_ controller: UIViewController? = UIApplication.shared.keyWindow?.rootViewController) -> UIViewController? { if let navigationController = controller as? UINavigationController { return topViewController(navigationController.visibleViewController) } if let tabController = controller as? UITabBarController { if let selected = tabController.selectedViewController { return topViewController(selected) } } if let presented = controller?.presentedViewController { return topViewController(presented) } return controller }