ios - UINavigationBar的完全自定义

标签 ios swift uikit uinavigationbar

我目前正在为客户构建一个 iOS 应用程序,但遇到了一个相当大的障碍。我的意思是,我可以编写自己的 UINavigationBar 之类的东西,但这会在以后导致很多问题。

到目前为止,我已经尝试了我所知道的一切,并花了几个小时寻找解决方案(覆盖 CALayer,使用 CoreGraphics 和几乎所有其他东西),我得到了相同的结果。无论我多么努力地尝试删除 UINavigationBar 的背景,它仍然显示一个略带半透明的白色背景。

我需要在导航栏上进行大量自定义(即从“blackColor”到“clearColor”的渐变,如果导航栏的背景拒绝完全,我就无法做到这一点 透明。我尝试将所有 CALayer 从 UINavigationBar 层复制到我添加的 subview ,但它一直崩溃,即使在替换委托(delegate)和 super 层时也是如此。

我真的需要帮助。下面是我试图实现的多种效果之一。 (蓝色矩形不是图像的焦点,无关紧要。)

App image

最佳答案

让它完全透明:

(UINavigationBar.appearance()).translucent = true
(UINavigationBar.appearance()).barTintColor = UIColor.clearColor()
(UINavigationBar.appearance()).backgroundColor = UIColor.clearColor()
(UINavigationBar.appearance()).setBackgroundImage(UIImage(), forBarMetrics: UIBarMetrics.Default)
(UINavigationBar.appearance()).shadowImage = UIImage()

编辑: 使用 iOS 8.3 看起来像这样:

enter image description here

还是我遗漏了什么?

关于ios - UINavigationBar的完全自定义,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30534947/

相关文章:

ios - UICollectionView 委托(delegate)方法的问题

objective-c - NSInvocation:无法识别的选择器,尽管已设置

ios - AVAudioRecorder 通过加速 FFT 进入频率 - EXECUTION

ios - 协议(protocol)类型不能符合协议(protocol),因为只有具体类型才能符合协议(protocol)

swift - Uicollectionview 单元格仅环绕文本

ios - IB_DESIGNABLE 绘制图像

ios - 选择 UIButton 时,这个按钮人工制品是什么?

ios - Storyboard中的自定义 TableView 单元格布局似乎无效

ios - 如何使用 FCM 触发横幅通知?

swift - swift 2 中的反射