我有一个UITableView
,包含2个部分,第一个是显示SegmentControl
,第二个是显示我的数据。第2部分没问题,但是在SegControl的剖视图中,组件的高度不合适。
StoryBoard
结果:在单元格UISegmentedControl
下方显示空白区域。
我尝试了多种方法来解决此问题:
func tableView(_ tableView: UITableView, estimatedHeightForRowAt indexPath: IndexPath) -> CGFloat {
if indexPath.section == 1 {
return 100
}
return 44.0
}
func tableView(_ tableView: UITableView, heightForHeaderInSection section: Int) -> CGFloat {
return 0.0
}
func tableView(_ tableView: UITableView, viewForHeaderInSection section: Int) -> UIView? {
return UIView()
}
func tableView(_ tableView: UITableView, viewForFooterInSection section: Int) -> UIView? {
if section == 0 {
return nil
}
.
.
}
编辑
我发现此空白是页脚,但我不知道该如何隐藏。
func tableView(_ tableView: UITableView, viewForFooterInSection section: Int) -> UIView? {
let view = UIView(frame: CGRect(x: 0, y: 0, width: 0, height: 0))
view.backgroundColor = UIColor.red
return view
}
答案 0 :(得分:0)
更新: 该页脚视图会增加额外的空间,而不是单元格本身。
使用heightForFooterInSection
。以下代码应该可以解决您的问题。
func tableView(_ tableView: UITableView, heightForFooterInSection section: Int) -> CGFloat {
if section == 0 {
return 0
}
return UITableView.automaticDimension
}
答案 1 :(得分:0)
我发现问题出在本节的页脚,所以我这样做:
func tableView(_ tableView: UITableView, heightForFooterInSection section: Int) -> CGFloat {
if section == 0 {
return 0
}
return UITableViewAutomaticDimension
}
并解决了我的问题。