在iOS开发中,很多时候,我们在自定义视图时,往往需要拿到本视图所在的当前的控制器对象,有很多同学都特别苦恼,那么今天我就来讲一讲如何获取这个控制器对象:
这里我们用到一个事件响应者链,直接上代码吧:
- (UIViewController *)viewController {
UIResponder *next = self.nextResponder;
do {
//判断响应者是否为视图控制器
if ([next isKindOfClass:[UIViewController class]]) {
return (UIViewController *)next;
}
next = next.nextResponder;
} while (next != nil);
return nil;
}