2016-01-27 46 views
3

我想兩個UILabel直接上UITeField在UIView上的兩個相同大小的集合。我認爲這將是堆棧視圖的極好使用。Xcode預計UILabel在堆棧視圖有更大的高度比它是

Here is a screenshot of my elements

然而,由於某些原因,Xcode中似乎想到的是,的UILabel會高得多比它應該是和有關佈局警告結果。

Here are the warnings

通過的UILabel選擇,你可以看到輪廓。您也可以在另一個UILabel上看到相同大小的輪廓,選擇堆棧視圖元素時也會顯示更大的區域。當單擊UITextField時,輪廓顯示爲從UILabel的輪廓結束處開始。使用'解決自動佈局問題'來'更新幀'將使堆棧視圖向外擴展以匹配輪廓的大小,但它會立即跳回到原始大小。

Gold highlight around an area much larger than it should be

我是否濫用或有錯誤配置我疊的看法?還是有其他問題呢?

我正在使用Xcode 7.3 build 7D111g。

+0

您是否給所有標籤賦予相同的寬度/高度consytraints? –

+0

@ Mr.T他們都沒有約束,堆棧視圖被設置爲填充。當我在標籤上設置約束時,沒有任何變化。 – ixchi

+0

選擇所有標籤並給出相同的寬度和高度約束,並查看會發生什麼 –

回答

1

這是因爲您的label正在填充stackview

不要給高度限制stackview。只需添加以下兩個約束水平頂集裝箱

enter image description here

Stackviewstackview

  1. 頂部空間
  2. 中心會從其內容獲取其高度。

    入住此更新GIF

    enter image description here

    所有警告拿完。

    希望這可以幫助。

+0

如果我向堆棧視圖添加頂部約束,它會開始發出警告。 http://imgur.com/a/rIKNG – ixchi

+0

根據您的情況檢查更新的答案。頂部堆棧視圖只需要兩個約束。請參閱GIF – Irfan

+0

因此,總體而言,此故事板對父級堆棧視圖有兩個限制 – Irfan

相關問題