【发布时间】:2016-09-26 23:01:25
【问题描述】:
这是我目前的情况:
我有一个UIViewController,上面有UIImageView。
后者有以下约束:trailing to superview、leading to superview、top space to top layout guide、width equals 320、height equals 820。
高度和宽度作为出口连接到我的班级,我将它们设置在viewDidLoad:
@IBOutlet weak var imageHeightconstraint: NSLayoutConstraint!
@IBOutlet weak var imageWidthConstraint: NSLayoutConstraint!
@IBOutlet weak var backgroundImage: UIImageView!
override viewDidLoad(){
backgroundImage.af_setImageWithURL(NSURL(string: photoURL)!)
imageHeightconstraint.constant = backgroundImage.image!.size.height
imageWidthConstraint.constant = self.view.frame.size.width
}
现在,我的图像是这样的:
这是 480x640 像素的照片。我尝试在我的故事板中将模式设置为center、scale to fill、aspect fill、aspect fit 和top。
例如,这是center:
aspect fit:
aspect fill:
但是我不知道如何从左到右拉伸这张图片并保持纵横比,所以整张照片都是可见的,它的左右边缘贴在屏幕的左右边缘。 我认为这两个约束可以解决它:
imageHeightconstraint.constant = backgroundImage.image!.size.height
imageWidthConstraint.constant = self.view.frame.size.width
但它不起作用。也许问题是照片的分辨率很低(480x640),所以高度只有那么小?你能给我任何提示我该如何解决它吗?
【问题讨论】:
标签: ios swift uiimageview nslayoutconstraint