Swift 获取view所在的ViewController
Posted 小炮陈
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Swift 获取view所在的ViewController相关的知识,希望对你有一定的参考价值。
//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的主要内容,如果未能解决你的问题,请参考以下文章
Swift 通过touchesBegan 方法获取用户点击的view,模拟连续点击效果
View Controller 显示黑屏而不是从 Firebase 数据库 Swift iOS 中获取用户