我們的UITableView存在於ViewController(而不是TableViewController)上。我們在運行時用兩行填充它。當我們設置高度限制時,表格顯示正常。當我們不要設置高度限制時,表格完全不會出現。你如何設置UITableView來動態設置其高度?iOS:在Swift中動態設置UITableView高度
我已經看到有關動態設置行高度(哪個工作正常)的線程,但不是關於實際的表高度。在這個特定的點上有幾條線索,但沒有一條適合我。在解決方案
更新:由於機器人貓建議我們在故事板設置了高度約束的UITableView
(我們有這樣的話),然後做Ctrl拖動來創建我們的控制器的IBOutlet
。執行我們在同樣的方法來填充我們的表調用reloadData()
上面的代碼之前
tableViewHeightConstraint.constant = tableView.contentSize.height
注:從那裏,我們執行以下代碼在viewWillAppear
每維涅什的答案。
約束只是另一個可以通過IBOutlet引用的對象。在Storyboard中設置視圖控制器約束,然後在UIViewController子類(或者控制UITableView高度的約束,就像到屏幕底部的距離一樣)創建UITableView高度約束的出口。然後爲高度設置適當的值(如固定值或屏幕比例)。 –