Я добавил UIView к ячейке таблиц через мой раскадровки со следующими ограничениями:Использования Autolayout ограничений программного центрировать UIImageView внутри UIView Swift 2.3 iOS10
Тогда я следующим кодом программно добавить UIImageView в UIView выше и размер его в соответствии с ориентацией экрана.
//Use half the screen size width when on an iPhone and on Landscape
let image: UIImage = UIImage(named: HEADER_IMAGE_BATH)!
imageView = UIImageView(image: image)
imageView!.frame = CGRectMake(0 , 0, self.view.frame.width/2, 185)
imageView!.contentMode = .ScaleAspectFit
//center image
let centerXConst = NSLayoutConstraint(item: imageView!, attribute: .CenterX, relatedBy: .Equal, toItem: imageWrapperView, attribute: .CenterX, multiplier: 1, constant: 1)
let centerYConst = NSLayoutConstraint(item: imageView!, attribute: .CenterY, relatedBy: .Equal, toItem: imageWrapperView, attribute: .CenterY, multiplier: 1, constant: 1)
NSLayoutConstraint.activateConstraints([centerXConst, centerYConst])
//add to sub view
imageWrapperView.addSubview(imageView!)
Однако мое изображение не центрируется, когда в ландшафте. Мое изображение - только половина ширины экрана, и я хотел бы сосредоточить его внутри моего UIView. Что мне не хватает? Благодаря