iOS开发: 找到控件当前所在的控制器

开发过程中, 我们很有可能要找到某一个控件所在的控制器, 比如一个输入框, 找到这个输入框所在的控制器, 就可以使用如下的方法

  • 根据响应者链, 一层一层向上查找, 如果不存在控制器, 直接返回nil
- (UIViewController *)viewController
{
    UIResponder *responder = self;
    
    do {
        responder = [responder nextResponder];
        if ([responder isKindOfClass:[UIViewController class]]) {
            return (UIViewController *)responder;
        }
    } while (responder != nil);
    return nil;
}
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容