我使用自動佈局來確定單元格大小(固定爲,變量高度)並在故事板中設置所有必要的約束條件。只要我不改變約束條件,Autolayout就可以正常工作。UICollectionView在更改約束條件後更新單元格
但在運行時我必須添加按鈕到一些單元格。我刪除最後一個標籤的底部約束,插入按鈕並向上面的標籤添加一個約束,一個引導約束到單元格,另一個約束到單元格的底部。
問題是,在此之後單元大小不會更新。我試圖在單元格和集合視圖中調用LayoutIfNeeded,但這不起作用。我認爲這些限制是正確的。該按鈕出現在正確的位置,但單元格僅保持沒有按鈕的單元格的高度。我如何告訴CollectionView更新單元格大小?
你試過'FUNC reloadItemsAtIndexPaths(indexPaths:[NSIndexPath])'? – hzwzw
我試過了:一會兒細胞高度會更新到正確的時刻。但是,然後再次調用cellForItemAtIndexPath,單元高度重置並重新調用reloadItemsAtIndexPaths。它會導致無限的調整大小。 – Superwayne
您在哪種方法中更改約束並添加按鈕? –