如何增加 UITableView 部分标题视图和第一个单元格之间的差距?
How do I increase the gap between a UITableView section headerview and first cell?
我添加了一个 UISegmentedControl 作为我的一个部分的标题视图。现在我的第一个 tableView 单元格的顶部被切断,如图所示。
有办法解决这个问题吗?
我试过弄乱 tableView insets 和 scrollView 但运气为零。
在我的 viewDidLayoutSubviews 中,我取消了高度修复了它:
override func viewDidLayoutSubviews() {
super.viewDidLayoutSubviews()
var frame = segmentedControl.frame
frame.size.height = 29.0
segmentedControl.frame = frame
segmentedControl.tintColor = ColourHelper().segmentedControlRed
segmentedControl.backgroundColor = UIColor.whiteColor()
segmentedControl.selectedSegmentIndex = 1
segmentedControl.addTarget(self, action: "segmentedControlTapped:", forControlEvents: UIControlEvents.ValueChanged)
tableView.headerViewForSection(1)?.hidden = true
}
但是现在我的 UISegmentedControl 的高度与我应用程序中的其余分段控件不匹配。
我不需要像问题中那样手动设置框架。我删除了该代码:
override func viewDidLayoutSubviews() {
super.viewDidLayoutSubviews()
segmentedControl.tintColor = ColourHelper().segmentedControlRed
segmentedControl.backgroundColor = UIColor.whiteColor()
segmentedControl.selectedSegmentIndex = 1
segmentedControl.addTarget(self, action: "segmentedControlTapped:", forControlEvents: UIControlEvents.ValueChanged)
tableView.headerViewForSection(1)?.removeFromSuperview()
}
然后像这样设置页眉的高度:
override func tableView(tableView: UITableView, heightForHeaderInSection section: Int) -> CGFloat {
return 29.0
}
我添加了一个 UISegmentedControl 作为我的一个部分的标题视图。现在我的第一个 tableView 单元格的顶部被切断,如图所示。
有办法解决这个问题吗?
我试过弄乱 tableView insets 和 scrollView 但运气为零。
在我的 viewDidLayoutSubviews 中,我取消了高度修复了它:
override func viewDidLayoutSubviews() {
super.viewDidLayoutSubviews()
var frame = segmentedControl.frame
frame.size.height = 29.0
segmentedControl.frame = frame
segmentedControl.tintColor = ColourHelper().segmentedControlRed
segmentedControl.backgroundColor = UIColor.whiteColor()
segmentedControl.selectedSegmentIndex = 1
segmentedControl.addTarget(self, action: "segmentedControlTapped:", forControlEvents: UIControlEvents.ValueChanged)
tableView.headerViewForSection(1)?.hidden = true
}
但是现在我的 UISegmentedControl 的高度与我应用程序中的其余分段控件不匹配。
我不需要像问题中那样手动设置框架。我删除了该代码:
override func viewDidLayoutSubviews() {
super.viewDidLayoutSubviews()
segmentedControl.tintColor = ColourHelper().segmentedControlRed
segmentedControl.backgroundColor = UIColor.whiteColor()
segmentedControl.selectedSegmentIndex = 1
segmentedControl.addTarget(self, action: "segmentedControlTapped:", forControlEvents: UIControlEvents.ValueChanged)
tableView.headerViewForSection(1)?.removeFromSuperview()
}
然后像这样设置页眉的高度:
override func tableView(tableView: UITableView, heightForHeaderInSection section: Int) -> CGFloat {
return 29.0
}