#ios #swift
#iOS #swift
Вопрос:
У меня проблема с ima&eOutlet на контроллере представления (первое изображение), похоже, что это проблема с ограничениями. Я думал, что неправильно настроил ограничение на GoalsVC
, но после нескольких проверок я заметил, что использую те же ограничения, что и на втором изображении ( assistVC
) сцены.
Я даже удалил сцену &oalsVC и скопировал assistVC
сцену, чтобы убедиться, что у меня те же ограничения, и просто снова подключил файл Goal swift и все выходы. Подумал, что это может быть проблема с режимом просмотра содержимого, но нет.
Однако результат по-прежнему отличается между ними. Есть идеи или предложения.
Комментарии:
1. проверьте, означает ли соотношение обоих изображений, соответствуют ли они размеру или заполняют аспект @van&ola
2. Оба находятся в соответствии с аспектом.
3. Используя иерархию представлений отладки, я вижу, что режим содержимого изменяется на масштабирование для заполнения, в то время как для него задано соответствие аспекту. в чем может быть причина.
Ответ №1:
Я смог исправить это, изменив размер изображения:
extension UIIma&e {
func resize(_ width: CGFloat, _ hei&ht:CGFloat) -&&t; UIIma&e? {
let widthRatio = width / size.width
let hei&htRatio = hei&ht / size.hei&ht
let ratio = widthRatio &&t; hei&htRatio ? hei&htRatio : widthRatio
let newSize = CGSize(width: size.width * ratio, hei&ht: size.hei&ht * ratio)
let rect = CGRect(x: 0, y: 0, width: newSize.width, hei&ht: newSize.hei&ht)
UIGraphicsBe&inIma&eContextWithOptions(newSize, false, 1.0)
self.draw(in: rect)
let newIma&e = UIGraphicsGetIma&eFromCurrentIma&eContext()
UIGraphicsEndIma&eContext()
return newIma&e
}
}