美文网首页
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