【问题标题】:Image in navigation bar won't scale down in size导航栏中的图像不会按比例缩小
【发布时间】:2015-09-11 00:08:28
【问题描述】:

我正在尝试在导航栏的标题视图中设置图像,但无论我使用哪种内容模式,图像都很大并且超出了导航栏的范围。我正在使用此(在 viewDidLoad 中)将图像设置为条形:

    let banner = UIImage(named: "banner.png")
    let bannerView = UIImageView(image:banner)
    bannerView.contentMode = UIViewContentMode.ScaleAspectFit
    self.navigationItem.titleView = bannerView

使用 ScaleAspectFill 有类似的结果。有没有办法缩小图像的大小?我真的很想避免使用图像编辑器。

【问题讨论】:

  • 尝试为imageview设置框架

标签: ios swift uiimageview


【解决方案1】:

在针对此问题的许多未决票进行长时间搜索后,我尝试修改约束并且它有效。希望对你有帮助

let banner = UIImage(named: "banner.png")
let bannerView = UIImageView(image:banner)
bannerView.contentMode = UIViewContentMode.ScaleAspectFit
self.navigationItem.titleView = bannerView
NSLayoutConstraint.activate([self.navigationItem.titleView!.heightAnchor.constraint(equalToConstant: 22),self.navigationItem.titleView!.widthAnchor.constraint(equalToConstant: 128)])

【讨论】:

    【解决方案2】:

    看这个例子:

    let imageView = UIImageView(frame: CGRectMake(0, 0, 40, 40))    
    imageView.contentMode = .ScaleAspectFit    
    imageView.image =  UIImage(named: "logo")
    self.navigationItem.titleView = imageView
    

    在这里你可以找到一些网络参考http://www.ioscreator.com/tutorials/customizing-navigation-bar-ios8-swift

    您还可以在图像缩放方面遇到一些问题,例如 iPad2 - 然后查看我在 SO Resizing image for icons for iPad2 - swift 上的问题

    【讨论】:

      猜你喜欢
      • 2018-06-12
      • 2016-05-23
      • 1970-01-01
      • 2012-07-28
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2017-12-21
      • 2015-07-03
      相关资源
      最近更新 更多