美文网首页
iOS获取View的所在的特定的parentViewContro

iOS获取View的所在的特定的parentViewContro

作者: 今年27 | 来源:发表于2021-01-28 16:27 被阅读0次

    1.当前的VC获取parentVC

    + (LKViewController*) getCurrentGroundVCWithViewController:(UIViewController*)vc{
        if (!vc) {
            return nil;
        }
        if ([vc isKindOfClass:[LKViewController class]]) {
            return vc;
        }else{
            return [self getCurrentGroundVCWithViewController:vc.parentViewController];
        }
    }
    

    2.当前View获取ParentVC

    + (LKViewController*)getCurrentGroundVCWithView:(UIView*)view{
        UIViewController* vc = [self superViewController:view];
        if (vc) {
            return [self getCurrentGroundVCWithViewController:vc];
        }
        return nil;
    }
    
    + (UIViewController *)superViewController:(UIView*)view {
        for (UIView* next = view; next; next = next.superview) {
            UIResponder* nextResponder = [next nextResponder];
            if ([nextResponder isKindOfClass:[UIViewController class]]) {
                return (UIViewController *)nextResponder;
            }
        }
        return nil;
    }
    

    相关文章

      网友评论

          本文标题:iOS获取View的所在的特定的parentViewContro

          本文链接:https://www.haomeiwen.com/subject/yucxtltx.html