2017-11-10 115 views
5

我在Xcode的界面生成器中發現了一個非常奇怪的錯誤,我希望別人能告訴我如何修復它,或者至少告訴我我不是唯一的錯誤。如何解決Interface Builder Xcode中的stackview錯誤問題?

當我嘗試使用Interface Builder在stackView中添加UILabelUITextview時,堆棧視圖將以無限寬度拉伸。對於我的UITextView,我禁用了滾動和編輯功能。

前: enter image description here

這是我後都結合元素StackView內:

enter image description here

當我使用兩個UILabels並添加那些StackView內它的正常工作。

+0

什麼限制你對stackview設置?當你在堆棧視圖中嵌入對象時,大部分現有的約束條件都將被刪除。堆棧視圖將使用其固有尺寸來確定其大小; 'UITextView'本質上非常長,因爲它會嘗試將所有文​​本放在一行上。如果將堆棧視圖限制在超級視圖的邊緣,那麼它應該可以正常工作。 – Paulw11

回答

0

添加拖尾和先行堆棧視圖本身的約束,對上海華或關閉具有明確的約束條件的項目,要解決這個問題

0

你需要至少3個(大多數情況下4)添加約束您的意見,以便使用自動佈局。

示例代碼:

[label.topAnchor constraintEqualToAnchor: self.topAnchor].active = YES; 
    [label.bottomAnchor constraintEqualToAnchor: self.bottomAnchor].active = YES; 
    [label.leadingAnchor constraintEqualToAnchor: self.leadingAnchor].active = YES; 
    [label.trailingAnchor constraintEqualToAnchor: self.trailingAnchor].active = YES; 
相關問題