在 IOS 中自定义 UINavigationBar 而不使用 UINavigationController 设置背景图像不起作用

Customize UINavigationBar in IOS without using UINavigationController setting background image not working

我是 IOS 的新手。所以我尝试在不使用导航控制器的情况下自定义 UINavigationBar。我可以更改图块和背景颜色,但我已尝试以编程方式设置背景图像,但 working.whether 是否可以使用情节提要本身设置背景图像?我已经尝试过大多数以编程方式使用的网站。那么有什么方法可以使用 UIStoryboard 设置背景图像吗?

您可以使用

[yourNavigationbar setBackgroundImage:[UIImage imageNamed: @"YourBackgroundImage.png"] 
               forBarMetrics:UIBarMetricsDefault];

对于Swift

yourNavigationbar.setBackgroundImage(UIImage(named: "YourBackgroundImage.png"),
               forBarMetrics: .Default)

我们可以这样做

你得到

的输出

备注

如果您从 Assests 加载图像,请使用 UIImage(named: "xx")

if let img = UIImage(named: "xx")
{
    self.topBar.setBackgroundImage( img , forBarMetrics: .Default)
 }

否则,如果您从资源包中加载图像,请使用 UIImage(named: "xx.extenson (.png )")

 if let img = UIImage(named: "xx.jpg")
{
    self.topBar.setBackgroundImage( img , forBarMetrics: .Default)
 }

您可以在apple douments

中使用此功能查看

这里附上the sample Project link Download and check once