2017-06-28 20 views
0

我的UITableView部分(及其高度,我猜)有問題。 在節標題中,我有一個視圖(名爲cornerRadiusView),其中標籤很少。這些標籤具有動態內容(從REST服務中獲取)。因此,無論何時增加UILabel高度,我都會增加cornerRadiusView的高度以正確容納內容。Swift UIView邊界在UITableView滾動後調整

問題是,只有當我滾動我的tableView時,所有這些都按預期工作。直到那時,高度是不合適的。

這裏我是posting GIF來顯示發生了什麼。

我可以根據需要提供更多的細節和代碼。有人可以看看哪裏有問題?

+0

請發佈代碼,顯示如何爲單元格和部分設置高度。還請將您的代碼張貼在顯示當您滾動時觸發的內容。 –

+0

我有我的問題詳細闡述在https://stackoverflow.com/questions/44718598/swift-tableview-row-height-updates-only-after-scrolling-or-toggle-expand-colla - 也有一個賞金:) –

回答

0

您可以使用下面的功能

func tableView(_ tableView: UITableView, heightForRowAt indexPath: IndexPath) -> CGFloat { 
     return UITableViewAutomaticDimension 
    } 

    func tableView(_ tableView: UITableView, estimatedHeightForRowAt indexPath: IndexPath) -> CGFloat { 
     return UITableViewAutomaticDimension 
    } 

,並在下面的方法

override func viewDidLayoutSubviews() { 
     super.viewDidLayoutSubviews() 
     tableview.reloadData() 
    } 

重載表視圖,如果你保持動力高度,然後在小區管理這些高度

override func layoutSubviews() 
{ 
} 
+0

謝謝! 雖然我不明白最後一種方法。除此之外,我在回答中添加了其他兩個,現在看起來像這樣 - http://g.recordit.co/pigXE77P2R.gif 看看我的代碼會有趣嗎?我有問題在 詳細說明https://stackoverflow.com/questions/44718598/swift-tableview-row-height-updates-only-after-scrolling-or-toggle-expand-colla –