当我设置一个有4行的表格视图时,在填充行的下面仍然有额外的分隔行(或额外的空白单元格)。
如何移除这些单元格?
当我设置一个有4行的表格视图时,在填充行的下面仍然有额外的分隔行(或额外的空白单元格)。
如何移除这些单元格?
当前回答
如果你要子类化UITableView,你需要这样做…
-(void)didMoveToSuperview {
[super didMoveToSuperview];
self.tableFooterView = [UIView new];
}
其他回答
我很幸运地实现了一个被接受的答案(iOS 9+, Swift 2.2)。我尝试着执行:
self.tableView.tableFooterView = UIView(frame: .zero)
然而,对我的tableView没有任何影响-我相信这可能与我使用UITableViewController的事实有关。
相反,我只需要重写viewForFooterInSection方法(我没有在其他地方设置tableFooterView):
override func tableView(tableView: UITableView, viewForFooterInSection section: Int) -> UIView? {
return UIView(frame: .zero)
}
这对于具有单个section的tableView来说效果很好(如果有多个section,则需要指定最后一个)。
Swift 3 /Swift 4 /Swift 5 +,非常简单
override func viewWillAppear(_ animated: Bool) {
super.viewWillAppear(animated)
//MARK:- For Hiding the extra lines in table view.
tableView?.tableFooterView = UIView()
}
OR
override func viewDidLoad(_ animated: Bool) {
super.viewDidLoad(animated)
//MARK:- For Hiding the extra lines in table view.
tableView?.tableFooterView = UIView()
}
如果你要子类化UITableView,你需要这样做…
-(void)didMoveToSuperview {
[super didMoveToSuperview];
self.tableFooterView = [UIView new];
}
试试这个
self.tables.tableFooterView = [[UIView alloc] initWithFrame:CGRectMake(0.0f, 0.0f, 320.0f, 10.0f)];
如果你想移除UITableview中不需要的空间,你可以使用下面两个方法
- (CGFloat)tableView:(UITableView *)tableView heightForHeaderInSection:(NSInteger)section{
return 0.1;
}
- (CGFloat)tableView:(UITableView *)tableView heightForFooterInSection:(NSInteger)section
{
return 0.1;
}