我有一个获取动态图像的图像视图,并使用纵横拟合来确定图像本身的框架。我试图约束图像视图内部的视图,但是当图像动态调整大小时,当我的约束被设置为图像视图的边界时,它内部的视图也不会动态调整大小。
在界面构建器中,有没有办法将约束设置为图像调整后的内容大小?
谢谢!
答案 0 :(得分:0)
设置图像视图的框架时,选择初始高度或宽度 - 而不是两者。然后,获取image.size
并计算其他比例。例如:
let width = 100
let height = width * image.size.width / image.size.height *
imageView.frame.size = CGSize(width: width, height: height)
imageView.contentMode = .scaleAspectFit
imageView.image = image
现在,您的imageView正好是图片的大小。只需将“height”替换为“width”,您就可以使用固定高度执行相同的操作,反之亦然。
希望这就是你要找的东西。