У меня есть UIImageView и его ограничение по высоте как IBOutlet. ImageView имеет изображение-заполнитель, установленное в IB. Когда я анимирую ограничение высоты в первый раз, все работает хорошо, а размер изображения заполнителя изменяется в соответствии с ImageView. Затем я заменяю заполнитель Image новым UIImage. Когда я снова анимирую ограничение высоты обратно в исходное положение, новый UIImage не изменяет размер. Что я делаю не так?
@IBOutlet weak var imageView: UIImageView!
@IBOutlet weak var heightConstraint: NSLayoutConstraint!
override func viewDidLoad() {
super.viewDidLoad()
imageView.contentMode = .scaleAspectFit
imageView.clipsToBounds = true
}
func setImage() {
let image = UIImage(named: "image")
imageView.image = image
}
func scaleUp() {
self.heightConstraint.constant = 400
UIView.animate(withDuration: 0.3, animations: {
self.view.layoutIfNeeded()
}) { (done) in
}
}
func scaleDown() {
self.heightConstraint.constant = 150
UIView.animate(withDuration: 0.3, animations: {
self.view.layoutIfNeeded()
}) { (done) in
}
}