在很多时候,我们自定义了很多层视图放在ViewController上,当我们在最上面的那层视图上需要触发ViewContoller来执行个弹窗事件或者其他事件时候,有很多方法可以来实现,block,代理等都可以实现这个。不过有个系统提供了一有个自带的方法我们可以用起来。
self.nextResponder:寻找下一个事件响应者
不管多少层View,都可以用以下办法
id vc = self.nextResponder;
for (int i = 0; i < 10; i ++) {
vc = [vc nextResponder];
if ([vc isKindOfClass:[UIViewController class]]) {
break;
}
}
UIViewController *ViewC = (UIViewController *)vc;
//这个ViewC就可以拿来执行响应弹窗、push,和模态推出的这些方法了。