0

我一直想知道如何在 Apple 的示例应用程序CoreDataBooks中实现 UITableView 部分标题。请看这个视频:

youtube 上的视频

  1. 这样的标头看起来与普通标头不同。我以前从未见过这样的标题。
  2. 当您滚动表格时,标题不会向上移动,直到它被下一个标题从下方推动。

我浏览了 CoreDataBooks 代码的每一行,但我找不到是什么使标题看起来和行为方式与它们一样。我唯一能找到的是,如果您从方法返回空字符串- (NSString *)tableView:(UITableView *)tableView titleForHeaderInSection:(NSInteger)section(而不是我预期的空标题),则根本没有标题。有什么建议么?我怎么做?

4

1 回答 1

0

我不确定有没有想要,但似乎他们使用自定义剖面视图。您可以通过实现 UITableViewDelegate "viewForHeaderInSection" 来获得此结果

使用示例:

-(UIView*) tableView:(UITableView *)tableView viewForHeaderInSection:(NSInteger)section
{
    //Header image have the same heigth that section 
    UIImageView *letterUIImageView = [[UIImageView alloc] initWithImage:[UIImage imageNamed:<header image>]];

    UILabel *letterUILabel = [[[UILabel alloc] initWithFrame:CGRectMake(5, 3, 300, 18)] autorelease];

    [letterUIImageView setAlpha:0.5];

    [letterUILabel setTextColor:[UIColor whiteColor]];
    [letterUILabel setBackgroundColor:[UIColor clearColor]];
    [letterUILabel setFont:[UIFont fontWithName: @"HelveticaNeue-Bold" size: 14.0f]]; 
    [letterUIImageView addSubview:letterUILabel];

    [letterUILabel setText:[self titleForHeaderInSection:section]];

    return  letterUIImageView;
}
于 2013-09-29T17:54:53.573 回答