tableView:viewForHeaderInSection:默认值?

我想有一个自定义节头,其余的默认头。

- (UIView *)tableView:(UITableView *)tableView viewForHeaderInSection:(NSInteger)section { return ???; } 

我该如何返回到默认的标题视图?

默认的标题视图是nil ,根本没有标题!

那么,文档没有说如何提供默认视图。 你有没有试过返回nil ,看看会发生什么?

如果这不起作用,我会build议解决它(这是假设您需要显示默认标题和dynamic显示自定义标题之间切换)的操作:

  • BOOL ivar添加到名为shouldShowDefaultHeader的tableview委托对象。
  • 覆盖respondsToSelector方法来做这样的事情:
  if(shouldShowDefaultHeader == YES && [NSStringFromSelector(aSelector)isEqual:@“tableView:viewForHeaderInSection:”]){return NO;  }
返回[superrespondsToSelector:aSelector]; 
  • 相应地切换shouldShowDefaultHeader伊娃。

编辑:阅读其他答案,返回nil应该工作正常,而不是用select器四处乱跑。 不过,无论如何,这很酷。 🙂

正如Saeed所说,默认的返回值是“ nil ”。

如果您想要一个视图,您可以在该方法中分配一个自定义视图,并使其返回该视图。

例如,如果您需要图片作为该部分的标题,则应该执行以下操作:

 [view addSubview:pictureView]; return view; 

这将返回您传入索引的部分的视图。