3

我有一个独特的情况。

我想为表格标题部分显示自定义标题文本,但我想要默认标题部分框架渐变而不是自定义标题部分纯色。(请看附图)

在此处输入图像描述

这是我在viewForHeaderInSection方法中所做的:

- (UIView*)tableView:(UITableView *)tableView viewForHeaderInSection:(NSInteger)section {
    UIView *customSectionHeaderView;
    UILabel *titleLabel;

    customSectionHeaderView = [[UIView alloc] initWithFrame:CGRectMake(20, 0, tableView.frame.size.width, 24)];
    titleLabel = [[UILabel alloc] initWithFrame:CGRectMake(15, 0, tableView.frame.size.width, 24)];
    titleLabel.textAlignment = UITextAlignmentLeft;
    [titleLabel setTextColor:[UIColor blackColor]];
    [titleLabel setBackgroundColor:[UIColor clearColor]];
    titleLabel.font = [UIFont boldSystemFontOfSize:15];
    titleLabel.text =  self.sortedPaths[section];

    [customSectionHeaderView addSubview:titleLabel];

    return customSectionHeaderView;
}

通过消除

customSectionHeaderView = [[UIView alloc] initWithFrame:CGRectMake(20, 0, tableView.frame.size.width, 24)];

我能够得到结果,但是我不能向它添加子视图并返回一个视图。

我怎样才能达到那种渐变效果?

4

1 回答 1

1

为什么不tableView:titleForHeaderInSection:改用?这可以让您准确了解您正在谈论的内容:替换文本的默认标题。

当然,或者您可以只绘制自己的渐变。iOS 具有出色的渐变绘制方法。

于 2012-12-24T18:59:52.963 回答