[英]iOS 11 Floating TableView Header
刚遇到类似的问题,发现这个问题的讨论对我有用:
self.tableView.estimatedRowHeight = 0
self.tableView.estimatedSectionHeaderHeight = 0
self.tableView.estimatedSectionFooterHeight = 0
似乎在iOS 11中更改了UITableView
的默认行为以使用估计的高度。 iOS 11 beta 2的发行说明说:
表视图现在默认使用估计的高度,这也意味着单元格和节头/页脚视图现在默认为自我大小。 estimatedRowHeight,estimatedSectionHeaderHeight和estimatedSectionFooterHeight属性的默认值现在是UITableViewAutomaticDimension,这意味着表视图选择要使用的估计高度。 如果可能,您仍应为每个房产提供更准确的估算,这是您对实际高度平均值的最佳猜测。 如果现有的表视图代码在使用iOS 11 SDK构建应用程序时表现不同,并且您不想采用自行调整大小,则可以通过将值设置为零来禁用估计的高度来恢复以前的行为。每个估计的高度属性。 (30197915)
另请参阅此处镜像的beta 2发行说明。
如果你想在整个应用程序的ahmedre答案中进行更改,可以在AppDelegate中设置此属性didFinishLaunchingWithOptions
UITableView.appearance().estimatedRowHeight = 0
UITableView.appearance().estimatedSectionHeaderHeight = 0
UITableView.appearance().estimatedSectionFooterHeight = 0
我不知道为什么在我的情况下,@ ahmedre的回答是行不通的...
所以如果你将所有估计的属性设置为0也不起作用,我的答案可能对你有帮助:
func tableView(_ tableView: UITableView, estimatedHeightForHeaderInSection section: Int) -> CGFloat {
return 0.1
}
func tableView(_ tableView: UITableView, heightForHeaderInSection section: Int) -> CGFloat {
return 0.1
}
尝试将表格样式从普通更改为分组。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.