我一直在努力解决这个常见问题:UITextView
UITableViewCell
UITableView
UITableView
UITableViewCell
UITableView
一件小事。
我有self.tableView.estimatedRowHeight
,其中包含自定义self.tableView.rowHeight = UITableViewAutomaticDimension;
。我的UITextField
在UITableView
和self.tableView beginUpdates
的帮助下使用新的iOS8自动调整动态单元格高度,根据ContentView的自动布局增加单元格高度。
我可以正确地增长我的endUpdates
的框架,我的{{1}}的单元格高度确实会增长,但每次我调用{{1}}和匹配的{{1}}时, tableView的整个滚动视图强制滚动到表视图的顶部。我有一个滚动到插入符号位置的方法,但是你可以想象,每次在UITextView中创建一个新行时,UITableView会滚动到最顶部,然后滚动到插入符号位置,它就像地狱一样笨拙。
有人有什么想法吗?如有必要,我可以提供视频。干杯, 麦克
答案 0 :(得分:27)
这也让我感到高兴,看起来self.tableView.estimatedRowHeight
就是问题所在。当我估计得足够大时,问题就不复存在了。
我添加了这个并且它到目前为止运作良好:
- (CGFloat)tableView:(UITableView *)tableView estimatedHeightForRowAtIndexPath:(NSIndexPath *)indexPath {
return UITableViewAutomaticDimension;
}
答案 1 :(得分:6)
我无法对akiraspeirs回答发表评论,但在任何调整大小之前将self.tableView.estimatedRowHeight
设置为我的单元格的确切高度摆脱了奇怪的滚动问题。他的第二个解决方案并不适用于我的情况。