[英]Swift UIImage full width of screen
I have the UIImage like so: 我有这样的UIImage:
let imageView = UIImageView(image: image!)
imageView.contentMode = .scaleToFill
self.view.addSubview(imageView)
What I am trying to do it make the image full width of the screen, I have tried scaleToFill, scaleAspectFit and scaleAspectFill neither of them do anything...what am I doing wrong? 我想做的是使图像全屏显示,我尝试过scaleToFill,scaleAspectFit和scaleAspectFill两者都不做……我在做什么错?
Here is my full code: 这是我的完整代码:
getLandGradingImage(image: imageData!) { result in
let image = UIImage(data: result)
if image != nil {
let imageView = UIImageView(image: image!)
imageView.contentMode = .scaleAspectFit
//Add Image to view
self.view.addSubview(imageView)
} else {
self.customAlert(title: "Error", message: "Unable to get images")
}
}
let imageView = UIImageView(image: image!)
imageView.contentMode = .scaleAspectFill
imageView.frame = self.view.bounds
imageView.autoresizingMask = [.flexibleWidth, .flexibleHeight]
self.view.addSubview(imageView)
You have to make your UIImageView
frame the size of the area you want to fill. 您必须将
UIImageView
框架设置为要填充的区域的大小。 You can do this by setting the frame explicitly or using auto-layout (recommended). 您可以通过显式设置框架或使用自动布局(推荐)来做到这一点。
method 1: 方法1:
let imageView = UIImageView(image: image!)
imageView.frame = self.view.frame;
imageView.contentMode = .scaleAspectFit
//Add Image to view
self.view.addSubview(imageView)
method 2: 方法2:
let imageView = UIImageView(image: image!)
imageView.contentMode = .scaleAspectFit
//Add Image to view
self.view.addSubview(imageView)
self.view.translatesAutoresizingMaskIntoConstraints = false
self.view.addConstraints(NSLayoutConstraint.constraints(withVisualFormat: "H:|-0-[subview]-0-|", options: .directionLeadingToTrailing, metrics: nil, views: ["subview": imageView]))
self.view.addConstraints(NSLayoutConstraint.constraints(withVisualFormat: "V:|-0-[subview]-0-|", options: .directionLeadingToTrailing, metrics: nil, views: ["subview": imageView]))
You want to manipulate the frame of the UIImageView
and not the contentMode. 您要操纵
UIImageView
的框架,而不是contentMode。
Try this: 尝试这个:
let imageView = UIImageView(image: image!)
imageView.frame = self.view.frame
imageView.contentMode = .scaleToFill
self.view.addSubview(imageView)
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.