我在我的一個項目中使用了自動佈局,並且遇到了我認爲應該是一件小事的麻煩。Autolayout啞(礦)?
舉個例子,我有兩個文字框在對方下面。我在兩點之間創建了一個垂直間距約束。
我期望如果我移動頂部文本框(使用setFrame),約束意味着底部會自動移動它來強制約束?
我的想法是否正確?還是我用自動佈局的方式來實現它的意圖呢?即。我誤解了它的目的。或者我應該使用除setFrame以外的其他方式移動頂部文本框?
任何輸入都會很好。在此先感謝:-)
PS。我玩過使用:setTranslatesAutoresizingMaskIntoConstraints這似乎工作。但是,這似乎並不是這樣做的正確方法。我最初的想法是,自動佈局應該用少量代碼來處理大小/位置關係,在這種情況下,我期望它將用零代碼處理。
我種的是iOS福利局的,但我不認爲自動佈局方面關係,這* *的變化隨着時間的推移。我認爲這是一次性的事情(初始佈局)。所以是的,它聽起來好像你在攻擊它。可能是錯的,雖然... – 2014-12-06 00:37:00
@BrendanHannemann是的,它確實尊重隨時間變化的關係。任何時候你打電話給'setNeedsLayout',它都會重新計算職位的位置。 – fishinear 2014-12-06 01:20:12
但是,混合用戶指定的佈局(setFrame :)和自動佈局是災難的祕訣。既可以使用用戶指定的佈局(覆蓋layoutSubviews並計算兩個框的位置),也可以爲兩者使用用戶自動佈局,也可以使用頂部文本框。 – fishinear 2014-12-06 01:22:23