【发布时间】:2017-03-25 16:04:12
【问题描述】:
我正在尝试向我的导航栏添加阴影。代码如下所示:
UINavigationBar.appearance().barStyle = .black
UINavigationBar.appearance().barTintColor = UIColor(white: 155/255,
alpha: 1.0)
UINavigationBar.appearance().isTranslucent = false
UINavigationBar.appearance().layer.shadowOffset = CGSize(width: 0, height: 4)
UINavigationBar.appearance().layer.shadowRadius = 4.0
UINavigationBar.appearance().layer.shadowColor = UIColor.black.cgColor
UINavigationBar.appearance().layer.shadowOpacity = 0.4
UINavigationBar.appearance().layer.masksToBounds = false
UINavigationBar.appearance().layer.shouldRasterize = true
但它不起作用。为什么它不起作用,我错过了什么?我不想扩展或继承 NavigationBar 来执行此操作。
编辑: 我发现
UINavigationBar.appearance().layer.bounds
返回错误的值,所以可能就是这样,但有人知道为什么吗?
【问题讨论】:
-
感谢@Anbu.Karthik,但我想使用外观来做到这一点,所以上面的链接对我没有多大帮助
-
@L3M0L 你能用外观方法做到吗?
-
听起来外观协议将仅使用 shadowImage 方法应用阴影
标签: ios swift swift3 uinavigationbar