2016-02-16 26 views
1

我有一個表格視圖控制器,樣式單元格的樣式爲「左側細節」。「左側細節」樣式單元格文本中的細節標籤正在切斷 - swift

-In my viewDidLoad()我有self.tableView.estimatedRowHeight = 40self.tableView.rowHeight = UITableViewAutomaticDimension像很多解決方案所說的那樣。但是,當我的細節標籤變得太大(與描述單元格一樣)時,單元格不會隨文本一起增長。

- 我試圖重新加載viewDidAppear(動畫:)的數據以及,但沒有幫助。

- 我現在沒有在我的heightForRowAtIndex函數中有任何東西,但也試圖設置它,它並沒有解決我的問題。

- 我也填充單元格後,在我的cellForRowAtIndexPath中嘗試過cell.sizeToFit()。

我錯過了一些明顯的東西嗎?或者是否存在限制細胞高度的「左側細節」風格?

+0

您是否使用自動佈局?使用'estimatedRowHeight'和'UITableViewAutomaticDimension',單元格不是動態的,沒有自動佈局。 – tktsubota

回答

0

你不會錯過任何我知道的事情,但可能會遇到涉及內置單元格樣式的邊緣案例。自調整大小的問題很少,主要適用於內置風格但can fail for certain cases

這是內置樣式如何管理其標籤和約束與自定義單元格樣式不同的副作用。如果您在調試器中檢查內置單元的內容視圖,則其約束數組爲空。

對於一個邊緣情況,如果某個單元不需要其中一個內置標籤,則Apple會通過從單元中完全刪除該視圖來優化它。當該單元格被重用並且標籤需要重新添加時,約束不會在最初發生時更新。可以通過確保兩個標籤始終具有文本來解決該特定問題,因此該視圖從未被刪除。

你絕對不應該包括heightForRowAtIndexPath。你應該刪除它,然後看看你是否可以解決cellForRowAtIndexPath內置的樣式問題。如果不是,則可能必須使用模仿左側細節樣式的自定義單元格。

無論哪種方式,我推薦submitting a bug report用一個小樣本項目來說明「左側細節」問題,因爲蘋果已經修復了許多這些問題,並且內置式自定義尺寸更加實用。

+0

非常感謝!我在'cellForRowAtIndexPath'中添加了一些代碼來檢查細節標籤中文本的長度,並在文本超過100個字符時將高度設置得更高。有沒有更好的方法來計算高度應該是多高?我可能只是製作一個自定義單元格 - 我首先使用左風格風格的唯一原因是因爲它「更容易」。 – tessa

相關問題