我试图通过AutoLayout使用estimatedHeightForRowAtIndexPath
获得动态单元格高度,并在iOS8中按预期工作,但在iOS7.1中通过这样说来压缩:
*** Terminating app due to uncaught exception 'NSInvalidArgumentException', reason: '-[MyProject.ViewController tableView:heightForRowAtIndexPath:]: unrecognized selector sent to instance 0x79e91350'
如果我定义heightForRowAtIndexPath
,则错误消失但单元格不会自动调整大小。有什么想法吗?
更新:它确实可以在iOS 7.0中使用,对吧?
答案 0 :(得分:6)
尝试:
if (NSFoundationVersionNumber > NSFoundationVersionNumber_iOS_7_1 ){
self.tableView.rowHeight = UITableViewAutomaticDimension;
self.tableView.estimatedRowHeight = 206;
}
func tableView(tableView: UITableView, heightForRowAtIndexPath indexPath: NSIndexPath) -> CGFloat {
if NSFoundationVersionNumber > NSFoundationVersionNumber_iOS_7_1 {
return UITableViewAutomaticDimension
} else {return 206}
}