首页 文章

如何在导航栏上使用图像徽标而不是 Headers

提问于
浏览
4

我尝试了几个不同的代码,但无法显示徽标

import UIKit 
class HomeViewController: UIViewController { 

override func viewDidLoad() { 
super.viewDidLoad() 

let logo = UIImage(named: "logo.png") 
let imageView = UIImageView(image: logo) 
self.navigationItem.titleView = imageView
navigationItem.titleView?.sizeToFit() 
 } 
}

我甚至试图在课堂上包括IB本身也不起作用,它似乎没有那样工作

@IBOutlet weak var navBar: UINavigationItem!

PS . 我的徽标是200x40px png,在资产中名为logo.png .

我的故事板

http://i68.tinypic.com/b68t8o.png

任何帮助表示赞赏

编辑:我通过在那里放置图像视图而不是整个导航项目故事解决了我的问题 . 谢谢你的建议 .

3 回答

  • 12

    试试这个

    let logo = UIImage(named: "logo.png") 
     let imageView = UIImageView(image: logo) 
     imageView.contentMode = .ScaleAspectFit // set imageview's content mode
     self.navigationItem.titleView = imageView
    

    或者添加如下

    let logo = UIImage(named: "logo.png") 
     let imageView = UIImageView(image: logo) 
     imageView.contentMode = .ScaleAspectFit // set imageview's content mode
     self.navBar.topItem?.titleView = imageView
    
  • 0

    设置您的imageview的内容模式,如,

    imageView.contentMode = .ScaleAspectFit
    
  • 0

    这段代码看起来不错,我认为UIImage的名称有错误,你调试并检查 let logo 是不是 nil ?尝试删除 ".jpg"

相关问题