UIView和UIViewController的小技巧。

相信很多朋友遇到过,想获取某个UIView的UIViewController.

 

开始我想了好久,没找到相应的属性和方法可以用,突然想到了。

 

消息响应者链。

 

 

UIView先响应,如果响应不了,那么如果它有控制器的话就会

 

把消息丢给它的控制器响应,如果没有控制器,那么就丢给它的

 

superView来响应。

 

所以可以UIViewController* controller = (UIViewController*)[view nextResponder];

 

得到的就是view的控制器了,当然,要确保您的这个view有控制器。

 

没有控制器,返回的就是superView了。

你可能感兴趣的:(UIView)