Swift|Swift - 判断指定 ViewController是否显示
// 获取当前显示的ViewController
extension UIViewController
{
class func currentViewController(base: UIViewController? = UIApplication.shared.keyWindow?.rootViewController) -> UIViewController?
{
if let nav = base as? UINavigationController
{
return currentViewController(base: nav.visibleViewController)
}
if let tab = base as? UITabBarController
{
return currentViewController(base: tab.selectedViewController)
}
if let presented = base?.presentedViewController
{
return currentViewController(base: presented)
}
return base
}
}
【Swift|Swift - 判断指定 ViewController是否显示】// 比较指定ViewController是否显示在屏幕上
// AnyClass 可以使用 classForCoder()获得
// JChatDetailViewController.classForCoder()
class func isCurrentViewControllerVisible(clzz: AnyClass) -> Bool{
let viewController = UIViewController.currentViewController()
guard viewController != nil else {
return false
}if (viewController?.isMember(of: clzz))! {
return true
}return false
}
推荐阅读
- 参保人员因患病来不及到指定的医疗机构就医,能否报销医疗费用()
- Swift中willSet和didSet的简述
- Android|Android install 多个设备时指定设备
- 分享!如何分分钟实现微信扫二维码调用外部浏览器打开指定页面的功能
- Hacking|Hacking with iOS: SwiftUI Edition - SnowSeeker 项目(一)
- C语言解方程的根和判断是否是闰年
- LeetCode算法题-11.|LeetCode算法题-11. 盛最多水的容器(Swift)
- 对今年以来股市的看法及后期判断
- iOS-Swift-map|iOS-Swift-map filter reduce、函数式编程
- Swift|Swift ----viewController 中addChildViewController