我正在使用自动布局,UITextView
中有UITableViewCell
。 UITableViewCell
的高度根据约束自动计算。以下是我如何指定单元格应该自我调整大小:
override func viewDidLoad()
{
...
// Set the estimated row height
self.myTableView.estimatedRowHeight = self.myTableView.rowHeight
// Set the height of the cell row based on its constraints
self.myTableView.rowHeight = UITableViewAutomaticDimension
// Prevent extra rows from displaying
self.myTableView.tableFooterView = UIView()
...
}
我确信我的UITableViewCell
上的所有UI元素都已正确设置了所有约束(前导,尾随,顶部和底部),但出于某种原因,UITextView
不是伸展以适应其可用文本。我尝试重新加载cellForRowAtIndexPath
和willDisplayCell
方法中的布局和约束无效。
如果我向下滚动表格,然后向上滚动到给定的单元格,UITextView确实可以正确拉伸。但是在第一次加载视图时,某些文本被切断是不可接受的。
我已经尝试了我能想到的一切,而且我无法让UITextView
伸展。更奇怪的是,我做了一个测试应用程序,UITextView
确实伸展得很好。但是,由于某些原因,它不能用于我的应用程序。
我很困难,可以使用一些帮助。任何帮助将不胜感激!
答案 0 :(得分:1)
我发现我的UITableViewCell
有一个Disclosure Indicator
附件。我所要做的就是取下配件(设置为None
),一切都很好!我不确定为什么会这样,但似乎这是一个错误。无论细胞上是否有附件,自我定型细胞都应该起作用。
此错误似乎已在iOS 9+中修复。对于需要支持iOS 8的应用,我建议您从UITableViewCell
中删除配件,并使用自定义图片替换配件。