如何将阴影添加到导航栏而不是默认边框

我想用阴影replaceUINavigationBar的默认边框。 有没有办法做到这一点? 我已经尝试使用与添加阴影到UIView相同的方法,但它增加了我的NavigationBar的高度。

尝试这个

 self.navigationController.navigationBar.layer.shadowColor = UIColor.blackColor().CGColor self.navigationController.navigationBar.layer.shadowOffset = CGSizeMake(2.0, 2.0) self.navigationController.navigationBar.layer.shadowRadius = 4.0 self.navigationController.navigationBar.layer.shadowOpacity = 1.0 

Swift 3

  override func viewDidLoad() { super.viewDidLoad() self.navigationController?.navigationBar.layer.shadowColor = UIColor.black.cgColor self.navigationController?.navigationBar.layer.shadowOffset = CGSize(width: 0.0, height: 2.0) self.navigationController?.navigationBar.layer.shadowRadius = 4.0 self.navigationController?.navigationBar.layer.shadowOpacity = 1.0 self.navigationController?.navigationBar.layer.masksToBounds = false } 

输出为

在这里输入图像说明