2016-09-30 103 views
0

我正在開發一個應用程序,但我有以下問題。 我有2個視圖(頂視圖將是一個圖像視圖,底部視圖將是一個UIWebView),以簡化我製作了一個包含2個彩色視圖的故事板的概念。底部視圖應適合左側,右側和底部。頂視圖應適合左側,右側和頂部。但是頂視圖內容的高度可以改變,所以我添加了約束:topView.bottom == bottomView.top,但現在Xcode抱怨並說:「需要約束:Y位置或高度」,但是y位置是以高度爲基礎的,高度對頂部有約束,我該如何解決這個問題? (我無法使用StackView,因爲iOS的最低版本必須是iOS 7.0)iOS自動佈局視圖基於其他視圖的高度

非常感謝您,圖片如下。

enter image description here

+1

它需要知道其中一個視圖的高度,而且由於使用的是簡單的UIView,沒有內容,沒有內在的內容大小。 – Paulw11

回答

1

Xcode的抱怨,因爲佈局是明確的。將高度約束添加到topView,並製作一個插件:

@IBOutlet weak var topViewHeightConstraint: NSLayoutConstraint! 

比將圖像加載到imageView並獲取其高度。之後,通過調整你的視線的高度:

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