swift 获取当前view所在控制器

2018-11-08  本文已影响12人  墨守青城

///获取当前视图所在控制器
func currentViewController() -> UIViewController? {
//1.通过响应者链关系,取得此视图的下一个响应者
var n = next
while n != nil {
//2.判断响应者对象是否是视图控制器类型
if n is UIViewController {
//3.转换类型后 返回
return n as? UIViewController
}
n = n?.next
}
return nil
}

///获取当前视图所在导航控制器
func currentNavViewController() -> UINavigationController? {
    var n = next
    while n != nil {
        if n is UINavigationController {
            return n as? UINavigationController
        }
        n = n?.next
    }
    return nil
}
上一篇下一篇

猜你喜欢

热点阅读