使用clipsToBounds隐藏NavigationBar边框/阴影会丢失Swift中的状态栏吗?

时间:2015-06-18 04:59:55

标签: swift uinavigationcontroller

所以我一直在拼命尝试隐藏navigationBar底部边框/阴影。我已经完成了所有可以获得的SO答案,但没有一点正常。

将navBar背景和阴影图像设置为空uiimage无效:

    navigationController?.navigationBar.setBackgroundImage(UIImage(named: ""), forBarPosition: UIBarPosition.Any, barMetrics: UIBarMetrics.Default)
    navigationController?.navigationBar.shadowImage = UIImage(named: "")

设置clipsToBounds或masksToBounds = true可以正常工作,但我在顶部丢失了状态栏,当使用相同的navController推送到下一个VC时,我得到一个黑色状态栏。

navigationController?.navigationBar.layer.masksToBounds = true

navigationController?.navigationBar.clipsToBounds = true 

appDelegate中的设置也不起作用:

 UINavigationBar.appearance().backIndicatorImage = UIImage(named: "")
 UINavigationBar.appearance().shadowImage = UIImage(named: "")

我在iOS 8上使用Swift。感谢您提出任何其他建议!

1 个答案:

答案 0 :(得分:0)

self.navigationController?.navigationBar.shadowImage = UIImage()
self.navigationController?.navigationBar.setBackgroundImage(UIImage(), forBarMetrics: .Default)