iOS自动布局视图基于其他视图的高度

时间:2016-09-30 20:20:40

标签: ios iphone layout autolayout constraints

我正在开发一个应用程序,但我有以下问题。 我有2个视图(顶视图将是一个imageview,底部视图将是一个UIWebView),以简化我用2个彩色视图制作故事板的概念。底视图应该适合左,右和底。顶视图应适合左,右和顶部。但是顶视图内容的高度可以改变,所以我添加了约束:topView.bottom == bottomView.top,但现在Xcode抱怨并说:“需要约束:Y位置或高度”但是y位置是基于高度,高度有一个约束到顶部,我该如何解决这个问题? (我不能使用StackView,因为最低iOS版本必须是iOS 7.0)

非常感谢你,图片如下。

enter image description here

1 个答案:

答案 0 :(得分:1)

Xcode抱怨因为布局明确无误。将高度约束添加到topView并为其创建一个出口:

@IBOutlet weak var topViewHeightConstraint: NSLayoutConstraint!

将图像加载到imageView并获得其高度。然后通过以下方式调整视图的高度:

self.topViewHeightConstraint.constant = heightOfTheImage
self.topView.layoutIfNeeded()