美文网首页
iOS导航栏全透明 无效 上面多了一层蒙版

iOS导航栏全透明 无效 上面多了一层蒙版

作者: 马威明 | 来源:发表于2020-05-15 13:38 被阅读0次

    iOS 我在设置导航栏透明的时候 会多出一层白色蒙板 网上资料大部分是这样说的:

    [self.navigationController.navigationBar.subviews enumerateObjectsUsingBlock:^(__kindof UIView * _Nonnull obj, NSUInteger idx, BOOL * _Nonnull stop) {
    
            if ([obj isKindOfClass:NSClassFromString(@"_UIBarBackground")]||[obj isKindOfClass:NSClassFromString(@"_UINavigationBarBackground")]) {
                obj.hidden = YES;
                obj.alpha = 0;
            }
    }];
    

    这种方法对我无效 打开时图预览层发现 白色蒙板是覆盖在_UIBarBackground视图上面UIView类型的子视图 所以我尝试了以下方法设置透明:

    self.naviView = [self.navigationController.navigationBar.subviews firstObject];
    [self.naviView.subviews enumerateObjectsUsingBlock:^(__kindof UIView * _Nonnull obj, NSUInteger idx, BOOL * _Nonnull stop) {
            obj.hidden = YES;
            obj.alpha = 0;
    }];
    

    生效。

    相关文章

      网友评论

          本文标题:iOS导航栏全透明 无效 上面多了一层蒙版

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