说我有两个UIViews。一个是框架的UIImageView,一个是图片的UIImageView。无论使用自动布局的屏幕尺寸,我都希望图片保留在框架内。图片不是框架的子视图 - 它们只是我想要以正确的比例保持叠加的两个图像视图。
我无法确定高度,因为我希望它们在旋转时能够改变(为了说明,我将帧固定在主视图的底部)。我无法使高度相等,因为它们不是,图片应该更小。我可以固定水平间距,但这只会确保图片的x,y是正确的,但不是高度和宽度。
我想要它,以便无论出于何种原因我改变帧大小(例如通过变换),图片将会跟随。
我可以在autolayout中执行此操作,还是需要编码?
答案 0 :(得分:0)
您可以限制将两个视图的centerX和centerY固定为相同的约束。然后,您可以设置约束以指定宽度和高度。这取决于你的框架有多大。你可以试试
picture.width = frame.width - 20
或
picture.width = 0.8 * frame.width
(并为高度做类似的事情)。
如果你想让它们都旋转,你需要在两个视图上设置旋转变换(不推荐)或者将它们放在同一个超视图中,并在该超视图上设置旋转变换(推荐)。请记住,如果视图具有变换集,则无法创建从该视图内部到该视图外部的约束。它们就像是独立的世界。