Ios 半透明,带有swift中的导航栏

Ios 半透明,带有swift中的导航栏,ios,swift,navigationbar,Ios,Swift,Navigationbar,我自定义了我的导航栏以清除。因此我将backgroundImage设置为UIImage(),isTranslucent=true。所以我在这里遇到的问题是:这就是我在xib中设置的。现在是:10px 当topConstraint=10时。当我在模拟器iphone5s中运行时:这就是我得到的。屏幕很完美。虽然我记得,如果我设置isTranslucent=true->我必须设置topConstraint高于导航栏高度,例如:topConstraint=50。。但有了这段代码,当我尝试在真正的设备上运

我自定义了我的导航栏以清除。因此我将backgroundImage设置为UIImage(),isTranslucent=true。所以我在这里遇到的问题是:这就是我在xib中设置的。现在是:10px 当topConstraint=10时。当我在模拟器iphone5s中运行时:这就是我得到的。屏幕很完美。虽然我记得,如果我设置isTranslucent=true->我必须设置topConstraint高于导航栏高度,例如:topConstraint=50。。但有了这段代码,当我尝试在真正的设备上运行时:iphone5s。这就是我得到的: 导航栏位于视图的上方。我的模拟器在iOS 11.0中运行,真实设备在iOS 9.2中运行。有人有同样的情况吗?非常感谢


顺便说一句:我需要设置我的导航栏是清晰的,因为我们的背景颜色是从左上到右下的渐变色

override func viewWillAppear(_ animated: Bool) {
    super.viewWillAppear(animated)

    self.navigationController?.navigationBar.isTranslucent = true
    self.navigationController?.navigationBar.backgroundColor = UIColor.clear
}
并保持topConstraint=10