【发布时间】:2016-05-16 19:16:10
【问题描述】:
我阅读了很多帖子,但没有一个针对最新版本的 Swift 给出明确、一致的答案来解决这个问题。
例如,this question 的最佳答案建议 UINavigationBar.appearance().setShadowImage()。但是最新版的swift中不存在这样的方法。
我不想隐藏底部边框。我只想改变颜色。
此外,能够改变高度也很棒,但我知道我在一个问题上问的太多了。
编辑:我创建了一个 2x1 像素的图像并将其设置为 shadowImage,但边框保持不变:
UINavigationBar.appearance().barTintColor = UIColor.whiteColor()
UINavigationBar.appearance().shadowImage = UIImage(named: "border.jpg") //in my AppDelegate, for global appearance
【问题讨论】:
-
阴影图像依然存在,你必须在Swift中做
UINavigationBar.appearance().shadowImage = ... -
有谁知道为什么自动完成不显示shadowImage? (但它确实存在,实际上)
-
因为无法通过
UINavigationBar.appearance()访问。 -
@ZGski 它是可访问的。我刚刚做到了,并且使用您的答案。
-
我的回答使用
navigationController?.navigationBar,而不是appearance()
标签: ios swift uinavigationcontroller uinavigationbar