Переместить UIView в другой UIView с addSubview - PullRequest
0 голосов
/ 29 марта 2019

У меня есть UIImageView, и я хотел бы выровнять его вправо.Но я пытаюсь начать с простого перемещения:

let imageView = UIImageView(image: UIImage(named: "icon_delete"))

var rect = imageView.frame
rect.origin.x += 100
imageView.frame = rect

photosViewController.overlayView.bottomStackContainer.addSubview(imageView)

Но, похоже, это не работает, и изображение было установлено на левую сторону:

enter image description here

Что не так?

Ответы [ 3 ]

0 голосов
/ 29 марта 2019

Попробуйте перерисовать вид, используя метод setNeedsDisplay().

Ссылка: https://www.hackingwithswift.com/example-code/uikit/how-to-force-a-uiview-to-redraw-setneedsdisplay

0 голосов
/ 03 апреля 2019

Сначала предположим, что:

photosViewController.overlayView.bottomStackContainer

- это представление (которое я называю содержащимView в моем фрагменте), попробуйте что-то вроде:

let imageView = UIImageView(image: UIImage(named: "icon_delete"))
containingView.addSubview(imageView)

imageView.translatesAutoresizingMaskIntoConstraints = false
containingView.translatesAutoresizingMaskIntoConstraints = false
imageView.trailingAnchor.constraint(equalTo: containingView.trailingAnchor).isActive = true

Если вам нужно переместить изображение влево от задней кромки, вы можете:

imageView.trailingAnchor.constraint(equalTo: containingView.trailingAnchor, constant: -10).isActive = true

или как далеко вам нужно переместить его. Примечание. Вы получите ошибку времени выполнения, если забудете установить для маски авторазмера значение false в обоих представлениях.

0 голосов
/ 29 марта 2019

Попробуйте использовать якоря авторазметки

imageView.leadingAnchor.constraint(equalTo: bottomStackContainer.leadingAnchor, constant: 100).isActive = true

Является ли bottomStackContainer stackView?Затем вы должны добавить упорядоченные подпредставления методом .addArrangedSubview ().

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...