关于设置导航栏透明时出现的黑线的解决方法

在我们设置导航栏透明之后,会在导航栏的位置出现一条黑线,怎样去除这条黑线呢。就用到了下面的递归方法

    -(void)getBackView:(UIView*)superView  
      
    {  
        if ([superView isKindOfClass:NSClassFromString(@"_UINavigationBarBackground")])  
              
        {  
            //移除分割线  
            for (UIView *view in superView.subviews)  
            {  
                if ([view isKindOfClass:[UIImageView class]])  
                {  
                    [view removeFromSuperview];  
                }  
            }  
    //        _navBackView = superView;  
    //        //在这里可设置背景色  
    //        _navBackView.backgroundColor = [UIColor orangeColor];  
        }  
        else if ([superView isKindOfClass:NSClassFromString(@"_UIBackdropView")])  
        {  
            //_UIBackdropEffectView是_UIBackdropView的子视图,这是只需隐藏父视图即可  
            superView.hidden = YES;  
        }  
        for (UIView *view in superView.subviews)  
        {  
            [self getBackView:view];  
        }  
    }  

我们在viewDidLoad里面调用就可以了

©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

友情链接更多精彩内容