iOS开发知识小集

【第5期】isCorrectViewWithClass

2020-01-06  本文已影响0人  天天乐视

关注微信公众号【科技小弟】,了解第一手iOS小知识。

今天我们来讲讲小D君自己写的一个方法,叫做:isCorrectViewWithClass

- (id)isCorrectViewWithClass:(Class)aClass subView:(id)sender {

    id view = [sender superview];
    if (view) {
    
        if ([view isKindOfClass:aClass]) {
        
            return view;
        } else {
        
            return [self isCorrectViewWithClass:aClass subView:view];
        }
    } else {
    
        return nil;
    }
}

从代码可以分析出,它的作用是递归取父视图。
通常在哪里可以用到这段代码呢?
当我们需要获取UIButton属于哪个UITableViewCell的时候,这个方法就显得特别好用,比如像这样:
科技小弟(https://www.jianshu.com/u/23c527245f22)

- (void)cellButtonHandle:(id)sender {

    UITableViewCell *cell = [self isCorrectViewWithClass:[UITableViewCell class] subView:sender];
}

cellButtonHandle是Cell上的按钮触发事件,通过将按钮sender传入,就可以得到UITableViewCell,特别方便。

你学到了吗?

上一篇下一篇

猜你喜欢

热点阅读