Изменение размера и создание ограничений для UIImageView - PullRequest
0 голосов
/ 11 декабря 2018

Я хотел бы, чтобы мое приложение изменяло размеры программ как UIImageView или UIbutton программно?

Я пробовал вот так

let imageView = UIImageView(frame: CGRect(x: self.view.center.x, y: self.view.center.y + 400, width: self.view.frame.maxX - 100, height: self.view.frame.midY - 150))
imageView.center = self.view.center

Ответы [ 2 ]

0 голосов
/ 12 декабря 2018

Если вы создали ваши виды, используя Storyboard, вы можете создать IBOutlet для высоты или ширины вашего UIImageview. Например:

@IBOutlet weak var imageHeightConstraint: NSLayoutConstraint!

Затем вы можете изменить высоту программно:

imageHeightConstraint.constant = 50

И заставить представление немедленно обновить свой макет:

self.view.layoutIfNeeded()
0 голосов
/ 11 декабря 2018

Вы можете попробовать

var centerCon:NSLayoutConstraint!

let imageView = UIImageView(frame:.zero)

view.addSubview(imageView)

imageView.translatesAutoresizingMaskIntoConstraints = false

centerCon = imageView.centerYAnchor.constraint(equalTo: self.view.centerYAnchor)

centerCon.isActive = true

NSLayoutConstraint.activate([

    imageView.centerXAnchor.constraint(equalTo: self.view.centerXAnchor),

    imageView.widthAnchor.constraint(equalToConstant: self.view.frame.maxX - 100),

    imageView.heightAnchor.constraint(equalToConstant: self.view.frame.midY - 150)

])

Затем изменить

centerCon.constant += 200
self.view.layoutIfNeeded()
...