在UITableView和UITableViewStylePlain中是否可以禁用浮动标头?

内容来源于 Stack Overflow,并遵循CC BY-SA 3.0许可协议进行翻译与使用

  • 回答 (2)
  • 关注 (0)
  • 查看 (36)

我正在使用UITableView布局内容“页面”。我使用表视图的标题来布局某些图像等,如果它们没有浮动但是保持静态,就像样式设置为静态一样,我更喜欢它UITableViewStyleGrouped

其他使用UITableViewStyleGrouped,有没有办法做到这一点?我想避免使用分组,因为它会在我的所有单元格中添加边距,并且需要禁用每个单元格的背景视图。我想完全控制我的布局。理想情况下,他们会是“UITableViewStyleBareBones”,但我没有在文档中看到该选项.

提问于
用户回答回答于

你应该可以通过使用自定义单元格来完成此行标题行。这些将像表格视图中的其他单元格一样滚动。

你只需添加一些逻辑即可在cellForRowAtIndexPath标题行中返回正确的单元格类型。

你可能不得不自己管理你的部分,即把所有内容都放在一个部分中并假冒标题。(你也可以尝试返回一个隐藏的视图为标题视图,但我不知道这是否会工作)

用户回答回答于

可能更简单的方法来实现这一点:

Objective-C的:

CGFloat dummyViewHeight = 40;
UIView *dummyView = [[UIView alloc] initWithFrame:CGRectMake(0, 0, self.tableView.bounds.size.width, dummyViewHeight)];
self.tableView.tableHeaderView = dummyView;
self.tableView.contentInset = UIEdgeInsetsMake(-dummyViewHeight, 0, 0, 0);

let dummyViewHeight = CGFloat(40)
self.tableView.tableHeaderView = UIView(frame: CGRect(x: 0, y: 0, width: self.tableView.bounds.size.width, height: dummyViewHeight))
self.tableView.contentInset = UIEdgeInsetsMake(-dummyViewHeight, 0, 0, 0)

节标题现在将像任何常规单元格一样滚动。

扫码关注云+社区