iOS 7 - viewForHeaderInSection textlabel始终为灰色

时间:2014-06-11 13:51:09

标签: ios objective-c uitableview textlabel

viewForHeaderInSection的textLabel的textColor始终为灰色。 BackgroundColor按预期更改。以下是创建headerview的代码。它确实进入“!headerView”条件。使用ios sdk 7.1

- (UIView *)tableView:(UITableView *)tableView viewForHeaderInSection:(NSInteger)section
{
    static NSString *headerIdentifier = @"InspectionQuestionHeader";

    UITableViewHeaderFooterView *headerView = [tableView dequeueReusableHeaderFooterViewWithIdentifier:headerIdentifier];

    if (!headerView) {
        headerView = [[UITableViewHeaderFooterView alloc] initWithReuseIdentifier:headerIdentifier];
        headerView.contentView.backgroundColor = [UIColor grayColor];

        // Why doesn't this work?
        headerView.textLabel.textColor = [UIColor whiteColor];
    }

    InspectionQuestionSection *questionSection = _questionSections[section];
    NSString *title = [NSString stringWithFormat:@"%@. %@", questionSection.sectionNumber, questionSection.sectionDescription];
    headerView.textLabel.text = title;

    return headerView;
}

1 个答案:

答案 0 :(得分:1)

这是您想要放在不同委托方法中的内容。 试试这个:

-(void)tableView:(UITableView *)tableView willDisplayHeaderView:(UIView *)view forSection:(NSInteger)section{
UITableViewHeaderFooterView *headerIndexText = (UITableViewHeaderFooterView *)view;
[headerIndexText.textLabel setTextColor:[UIColor whiteColor]];
}