UItableview cell 第一个cell上面的距离怎么变小

试了用-(CGFloat)tableView:(UITableView *)tableView heightForHeaderInSection:(NSInteger)section方法,但是不知为什么并没有什么改变。。还有什么办法吗?或者我上面的方法可能问题出在哪些地方

阅读 6.8k
5 个回答
新手上路,请多包涵

return 0.001没效果?

如果你在这个方法里面 return 0;

其实显示的还是默认值

所以你可以试试 return 1; 或者更小的数字

如果我没理解错的话你是想改变第一个 Cell 到顶部的距离,可以通过填充一个空 UIViewtableHeaderView,然后通过这个 View 的 Frame Height 来控制。

UIView *tableHeaderView = [[UIView alloc] initWithFrame:CGRectMake(0, 0, 1, 10)];    // 这里 10 就是你想要的高度
tableView.tableHeaderView = tableHeaderView;

如果只是改变第一个cell到顶部的距离,最简单直接粗暴的方法就是给你的tableView的顶部与父view的顶部之间预留你想要的空间(也就是所谓的第一个cell上面的距离),这样既可

不知道你视图的目录层级是什么,要设置header的高度,首先你要有一个header。

//swift
// 返回header的高度
override func tableView(tableView: UITableView, heightForHeaderInSection section: Int) -> CGFloat {
    return 5
}
// 在header中添加一个视图
override func tableView(tableView: UITableView, viewForHeaderInSection section: Int) -> UIView? {
    let view = UIView()
    view.backgroundColor = UIColor.redColor()
    return view
}
撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题