下面的代码对我不起作用,任何人都可以帮助弄清楚出了什么问题吗?
var image = UIImage(named: "10384605_10152519403846670_5189785375955620548_n.jpg") as UIImage
self.navigationController.navigationBar.setBackgroundImage(image , forBarMetrics:UIBarMetrics)
self.navigationController.navigationBar.setBackgroundImage(image,
forBarMetrics: .Default)
在AppDelegate.swift中
func application(application: UIApplication, didFinishLaunchingWithOptions launchOptions: [NSObject: AnyObject]?) -> Bool {
// Override point for customization after application launch.
//Image Background Navigation Bar
let navBackgroundImage:UIImage! = UIImage(named: "backgroundNB.png")
UINavigationBar.appearance().setBackgroundImage(navBackgroundImage, forBarMetrics: .Default)
return true
}
在Swift 3中:
如果要在后台添加重复图像,可以在AppDelegate> didFinishLaunchingWithOptions中进行此调用:
let image = UIImage(named: "imageNameInAsset")
UINavigationBar.appearance().setBackgroundImage(image, for: .default)
如果要将图像添加到导航栏的中心,则需要在ViewController> viewWillAppear中执行此操作:
let titleView = UIImageView(image: UIImage(named: "imageNameInAsset"))
self.navigationItem.titleView = titleView
如果要在导航栏中填充图像,只需使用以下代码:
self.navigationController?.navigationBar.setBackgroundImage(UIImage(named: "your_Background_Image_Name")?.resizableImage(withCapInsets: UIEdgeInsets.zero, resizingMode: .stretch), for: .default)
let navBackgroundImage:UIImage! = UIImage(named: "navbar_bg")
[UINavigationBar .appearance().setBackgroundImage(navBackgroundImage, forBarMetrics:.Default)]
对于Swift 3:
在AppDelegate.swift中:
UINavigationBar.appearance().setBackgroundImage(UIImage(named:"pattern.png"),
for: .default)
要么
在viewDidLoad()中:
self.navigationController?.navigationBar.setBackgroundImage(UIImage(named:"pattern.png"),
for: .default)
将以下代码添加到AppDelegate.swift中的didFinishLaunchingWithOptions方法:
if let myImage = UIImage(named: "navBarImage.jpg"){
UINavigationBar.appearance().setBackgroundImage(myImage, for: .default)
}
@benLIVE询问如何做一个后退按钮,当我找到接受的答案时我正在做的事情,所以我想我也会把它留在这里(如果有点晚)b / c如果要更换导航栏图标,您也可以替换所有这些!
let cubeIcon = UIImageView(image: yourImage)
cubeIcon.contentMode = .scaleAspectFit
self.navigationItem.backBarButtonItem?.image = cubeIcon.image
在导航控制器中设置背景图像
self.navigationController?.navigationBar .setBackgroundImage(UIImage(named: "cricket"), for: .default)