用代碼進(jìn)行自動(dòng)布局時(shí)贮预,遇到這個(gè)問(wèn)題:Unable to simultaneously satisfy constraints.雖然這只是個(gè)警告。
首先確定布局確實(shí)沒問(wèn)題。
1.我們事先需要將每個(gè)參與布局的控件的屬性:
translatesAutoresizingMaskIntoConstraints設(shè)置成false
translatesAutoresizingMaskIntoConstraints的作用是將autoresizingMask(frame, size)布局自動(dòng)轉(zhuǎn)換成autolayout的constraint約束布局
千萬(wàn)不要將UIViewController的view. translatesAutoresizingMaskIntoConstraints設(shè)置成false
2.如果是CollectionView或TableView中的Cell自適應(yīng)布局引起的,是因?yàn)樵O(shè)置的"CollectionView.estimatedItemSize"或者"TableView.estimatedRowHeight"的大小無(wú)法讓cell在初始時(shí)達(dá)成它的布局.比如限制的CollectionView.estimatedItemSize = CGSzie(100, 100),但是cell布局后的大小要比(100,100)大复旬,就會(huì)發(fā)生這樣的問(wèn)題.我只需要將CollectionView.estimatedItemSize的值設(shè)置相對(duì)大一點(diǎn)就不會(huì)出現(xiàn)警告了