2016-06-07 27 views
0

我有一個自動佈局問題。我在一行中有一些標籤,它們位於另一個視圖內的視圖內。iOS,Autolayout派生高度,不知道如何?

我只設置了外部視圖的高度。

我不知道如何導出內部視圖和標籤的高度。

我對其他一切都有限制。 例如標籤有.. 前導空格 比例寬 頂部空間 尾隨空間

內容擁抱優先 - 251 內容壓縮 - 750 固有大小 - 默認

我一直在閱讀有關內容的固有大小和壓縮阻力和內容擁抱。我試過改變我的標籤的字體大小,認爲這會增加尺寸,但它不。

我不確定發生了什麼,但autolayout滿足?

編輯:限制 - 根據要求

enter image description here

enter image description here

enter image description here

內視圖的約束

"<NSLayoutConstraint:0x7b3e0290 UILabel:0x7b36abd0'12'.width == 0.17*UIView:0x7b3d9e50.width>", 
"<NSLayoutConstraint:0x7b3646d0 H:|-(0)-[UILabel:0x7b36abd0'12'] (Names: '|':UIView:0x7b3d9e50)>", 
"<NSLayoutConstraint:0x7b363680 V:|-(0)-[UILabel:0x7b36abd0'12'] (Names: '|':UIView:0x7b3d9e50)>", 
"<NSLayoutConstraint:0x7b362b30 UILabel:0x7b36a390'x'.width == 0.15*UIView:0x7b3d9e50.width>", 
"<NSLayoutConstraint:0x7b362440 H:[UILabel:0x7b36abd0'12']-(4)-[UILabel:0x7b36a390'x']>", 
"<NSLayoutConstraint:0x7b362050 V:|-(0)-[UILabel:0x7b36a390'x'] (Names: '|':UIView:0x7b3d9e50)>", 
"<NSLayoutConstraint:0x7b35fa90 V:|-(0)-[UILabel:0x7b3ee210'12'] (Names: '|':UIView:0x7b3d9e50)>", 
"<NSLayoutConstraint:0x7b35f5d0 H:[UILabel:0x7b36a390'x']-(4)-[UILabel:0x7b3ee210'12']>", 
"<NSLayoutConstraint:0x7b360230 UILabel:0x7b3ee210'12'.width == 0.16*UIView:0x7b3d9e50.width>", 
"<NSLayoutConstraint:0x7b35e6d0 H:[UILabel:0x7b3ee210'12']-(4)-[UILabel:0x7b36d800'=']>", 
"<NSLayoutConstraint:0x7b364bf0 V:[UILabel:0x7b36d800'=']-(0)-| (Names: '|':UIView:0x7b3d9e50)>", 
"<NSLayoutConstraint:0x7b361f10 V:|-(0)-[UILabel:0x7b36d800'='] (Names: '|':UIView:0x7b3d9e50)>", 
"<NSLayoutConstraint:0x7b364500 UILabel:0x7b36d800'='.width == 0.13*UIView:0x7b3d9e50.width>", 
"<NSLayoutConstraint:0x7b357460 H:[UILabel:0x7b36bbf0'144']-(0)-| (Names: '|':UIView:0x7b3d9e50)>", 
"<NSLayoutConstraint:0x7b363580 V:|-(0)-[UILabel:0x7b36bbf0'144'] (Names: '|':UIView:0x7b3d9e50)>", 
"<NSLayoutConstraint:0x7b357b20 H:[UILabel:0x7b36d800'=']-(4)-[UILabel:0x7b36bbf0'144']>", 
"<NSLayoutConstraint:0x7b358430 UILabel:0x7b36bbf0'144'.width >= 0.25*UIView:0x7b3d9e50.width>" 
+0

你應該顯示你的約束和模擬器截圖,以獲得問題的圖片。 –

+0

@BangOperator我已經添加了上面的約束。 – Jules

+0

@BharatModi的問題是我不知道標籤的高度是如何導出的? – Jules

回答

1

檢查日誌你有添加內部視圖的底部約束到標籤的底部在11約束。

"<NSLayoutConstraint:0x7b364bf0 V:[UILabel:0x7b36d800'=']-(0)-| (Names: '|':UIView:0x7b3d9e50)>", 

這定義了innerview的底部。因此,內部視圖被固定在UILabel和底部的頂部。 這就是內部視圖的高度的原因導出和等於你UILabel

+0

啊,是的,非常感謝:) – Jules

0

嘿,你可以用它來創建高度的IBOutlet中NSLayoutConstraint或寬度

@property (strong, nonatomic) IBOutlet NSLayoutConstraint *lableName; 
lableName.constant = lable_size; 
+0

謝謝,但我試圖在IB做所有事情。 – Jules

相關問題