Get to UIViewController from UIView?

前端 未结 29 2008
一整个雨季
一整个雨季 2020-11-22 16:57

Is there a built-in way to get from a UIView to its UIViewController? I know you can get from UIViewController to its UIView

29条回答
  •  粉色の甜心
    2020-11-22 17:43

    Swift 4 version

    extension UIView {
    var parentViewController: UIViewController? {
        var parentResponder: UIResponder? = self
        while parentResponder != nil {
            parentResponder = parentResponder!.next
            if let viewController = parentResponder as? UIViewController {
                return viewController
            }
        }
        return nil
    }
    

    Usage example

     if let parent = self.view.parentViewController{
    
     }
    

提交回复
热议问题