将导航条设置成透明的

    //1
    self.navigationController.navigationBar.alpha=0;  //设置导航条透明度为0,是没有效果的,还是原来的样子


    //2.1
    //在这里,有一个模式,必须要传默认UIBarMetricsDefault模式才能设置背景图片.
    [self.navigationController.navigationBar setBackgroundImage:nil forBarMetrics:UIBarMetricsDefault];//在这里发现设为nil的时候,系统会对它做了一层判断,它会判断如果传入nil的话,它就会帮你生成一个半透明的图片,设置导航条的背景图片.
    
    //在这里传入一张空的图片,然后就能将导航条设置成透明的了.
    [self.navigationController.navigationBar setBackgroundImage:[[UIImage alloc] init]  forBarMetrics:UIBarMetricsDefault];
    
    //但是设置完后,发现有一根线,这根线其实是导航条的一个阴影.直接把它清空就行了.
    [self.navigationController.navigationBar setShadowImage:[[UIImage alloc] init]];


    //通过对以上的理解以后设置导航条为全透明的我们可以通过

    [self.navigationController.navigationBar setBackgroundImage:[[UIImage alloc] init]  forBarMetrics:UIBarMetricsDefault];


    //去掉导航条的底部横线我们可以通过

    [self.navigationController.navigationBar setShadowImage:[[UIImage alloc] init]];

原文地址:https://www.cnblogs.com/yibadao/p/6102110.html