Я реализовал представление стека, пропорциональное образам и меткам, а также текст и кнопки внутри popover поверх моего основного контроллера представления. Когда я перейду к popover, я использую представление, которое будет отображаться переопределить, чтобы определить радиус угла изображения, который я называю ProfileImage равным 1/2 его высоте, чтобы он отображался как круг.Как использовать атрибуты subviews в StackView для параметра Fill пропорционально, когда он пересчитывается после вращения устройства
I Когда я поворачиваю устройство, стек пересчитывает и изменяет размер profileImage. Я попытался использовать приведенный ниже код, чтобы отрегулировать радиус угла так, чтобы он был кругом при переходе вида. Я пробовал этот код как в блоке завершения, так и в блоке «Транслирование».
Когда я поворачиваю устройство, радиус угла устанавливается по размеру изображения в ориентации OLD, а не в новой ориентации. Кажется, что переход к новой ориентации происходит, и ТОГДА стек пересчитывает себя. Радиус угла, кажется, обновляется до этого. Я хотел бы помочь понять, как вызвать свойство height изображения, которое будет высотой в новом представлении после поворота устройства, и стек пересчитывает размер изображения на основе этой новой ориентации.
Благодарим за любые рекомендации, которые вы можете предоставить. Пожалуйста, смотрите ниже код в вопросе:
override func viewWillTransition(to size: CGSize, with coordinator: UIViewControllerTransitionCoordinator) {
coordinator.animate(alongsideTransition: { context in
context.viewController(forKey: UITransitionContextViewControllerKey.from)
}, completion: {(context) -> Void in
self.view.layoutSubviews()
self.ProfileImage.layer.cornerRadius = self.ProfileImage.bounds.size.height/2
print(self.ProfileImage.frame.size.height)
})
}