Tag: autolayout uitextview

在input时调整包含UITextView的UITableViewCell

我有一个包含自定义单元格的UITableViewController。 每个单元格都使用一个笔尖创build,并包含一个不可滚动的UITextView。 我在每个单元格中添加了约束,以便单元格调整其高度以适应UITextView的内容。 所以最初我的控制器是这样的: 现在我希望当用户在单元格中键入内容时,内容会自动适应。 这个问题已经被问了好多次了,特别是这个或者第二个答案 。 我已经在我的代码中写下了如下代表: – (BOOL) textView:(UITextView *)textView shouldChangeTextInRange:(NSRange)range replacementText:(NSString*)text { [self.tableView beginUpdates]; [self.tableView endUpdates]; return YES; } 然而,它会导致以下奇怪的行为:所有的约束被忽略,所有单元格高度折叠到最小值。 看到下面的图片: 如果我向下滚动tableView为了强制一个新的cellForRowAtIndexPath调用,我恢复正确的高度单元格: 请注意,我没有实现heightForRowAtIndexPath,因为我希望autoLayout来照顾这个。 有人能告诉我我做错了什么,或者帮助我吗? 非常感谢你 !