代码之家  ›  专栏  ›  技术社区  ›  Erik

半透明UI导航栏

  •  7
  • Erik  · 技术社区  · 10 年前

    我很难使我的UINavigationBar完全透明,只有白色文本&按钮,以便我用于ViewController背景的ImageView在顶部完全可见。

    我尝试过以下代码:

        // Set the BarTintColor to translucent and text colors to white
    self.navigationController.navigationBar.barTintColor = [UIColor clearColor];
    self.navigationController.navigationBar.titleTextAttributes = [NSDictionary dictionaryWithObject:[UIColor whiteColor] forKey:UITextAttributeTextColor];
    self.navigationController.navigationBar.tintColor = [UIColor whiteColor];
    

    但是 this 结果是一个黑色的UINavigationBar, 我如何解决这个问题?

    应用程序从此处推送 ViewController 到此为止 ViewController 其中UINavigationBar渐变为红色。其他几个ViewControllers也在进行相同的渐变动画,因此UINavigationBar是必需的

    第一个ViewController带有“Ny”按钮的部分将得到改进;)-只是在用Photoshop这样的工具

    谢谢 埃里克

    3 回复  |  直到 10 年前
        1
  •  11
  •   iOS Dev    10 年前

    这是我用来使导航栏透明的方法:

    [self.navigationController.navigationBar setBackgroundImage:[UIImage new] forBarMetrics:UIBarMetricsDefault];
    self.navigationController.navigationBar.translucent = YES;
    
        2
  •  1
  •   Shahab Qureshi    10 年前

    添加此

    self. navigationController.navigationBar.translucent = YES;
    
        3
  •  0
  •   Community Egal    7 年前

    我发现这很相似 question . 还有一个例子 Gist