带有不透明标题的 UITableViewStylePlain

Jim*_*Jim 4 uitableview

我实现了一个风格 UITableViewStylePlain 的 UITableView。我正在使用带有纯色背景的自定义标题视图,它应该是不透明的。但是标题不是不透明的,当它们在标题下滚动时,单元格是可见的。我想让标题不透明,但我不知道这是怎么做到的。

yas*_*375 5

当表格视图是普通的时,如果其部分中的至少一个单元格在屏幕上,则它是可见的。所以看起来表格视图在内部某处设置了一个带有一些 alpha 的标题的背景视图。但是您可以将背景视图设置为自定义视图,然后为其设置背景。

您可以在以下位置创建自定义标题视图时执行此操作tableView:viewForHeaderInSection:

- (UIView *)tableView:(UITableView *)tableView viewForHeaderInSection:(NSInteger)section
{
  UITableViewHeaderFooterView *header = ...
  header.backgroundView = [UIView new];
  header.backgroundView.backgroundColor = [UIColor greenColor];

  return header;
}
Run Code Online (Sandbox Code Playgroud)

或者,如果您不想创建自定义标题视图,那么您可能可以tableView:willDisplayHeaderView:forSection:在默认标题视图中设置背景。