码迷,mamicode.com
首页 > 编程语言 > 详细

Swift 获取view所在的ViewController

时间:2018-05-29 22:53:25      阅读:369      评论:0      收藏:0      [点我收藏+]

标签:sequence   self   int   skin   control   color   round   span   gre   

 

 

//uiview的扩展

extension UIView{

    func getFirstViewController()->UIViewController?{

        for view in sequence(first: self.superview, next: {$0?.superview}){

            if let responder = view?.next{

                if responder.isKind(of: UIViewController.self){

                    return responder as? UIViewController

                }

            }

        }

        return nil

       

    }

}

 

 

 

    

    override func viewDidLoad() {

        super.viewDidLoad()

        //调用

        let mView = UIView(frame: CGRect(origin: CGPoint.zero, size:CGSize(width: 100, height: 100)))

        mView.backgroundColor = UIColor.red

        self.view.addSubview(mView)

        

        //获取mView的ViewController

        let vc = mView.getFirstViewController()

    }

Swift 获取view所在的ViewController

标签:sequence   self   int   skin   control   color   round   span   gre   

原文地址:https://www.cnblogs.com/chenxiaopao/p/9108022.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!