本文介绍了UITableView - 更改部分标题颜色的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

如何更改 UITableView 中节标题的颜色?

How can I change color of a section header in UITableView?

编辑:DJ-S 提供的答案 应考虑用于 iOS 6 和多于.已接受的答案已过时.

EDIT: The answer provided by DJ-S should be considered for iOS 6 and above. The accepted answer is out of date.

推荐答案

希望 UITableViewDelegate 协议中的这个方法能让你开始:

Hopefully this method from the UITableViewDelegate protocol will get you started:

目标 C:

- (UIView *) tableView:(UITableView *)tableView viewForHeaderInSection:(NSInteger)section
{
  UIView *headerView = [[[UIView alloc] initWithFrame:CGRectMake(0, 0, tableView.bounds.size.width, 30)] autorelease];
  if (section == integerRepresentingYourSectionOfInterest)
     [headerView setBackgroundColor:[UIColor redColor]];
  else
     [headerView setBackgroundColor:[UIColor clearColor]];
  return headerView;
}

斯威夫特:

func tableView(_ tableView: UITableView!, viewForHeaderInSection section: Int) -> UIView!
{
  let headerView = UIView(frame: CGRect(x: 0, y: 0, width: tableView.bounds.size.width, height: 30))
  if (section == integerRepresentingYourSectionOfInterest) {
    headerView.backgroundColor = UIColor.redColor()
  } else {
    headerView.backgroundColor = UIColor.clearColor()
  }
  return headerView
}

2017 年更新:

Swift 3:

func tableView(_ tableView: UITableView, viewForHeaderInSection section: Int) -> UIView?
    {
        let headerView = UIView(frame: CGRect(x: 0, y: 0, width: tableView.bounds.size.width, height: 30))
        if (section == integerRepresentingYourSectionOfInterest) {
            headerView.backgroundColor = UIColor.red
        } else {
            headerView.backgroundColor = UIColor.clear
        }
        return headerView
    }

[UIColor redColor] 替换为您喜欢的任何 UIColor.您可能还希望调整 headerView 的尺寸.

Replace [UIColor redColor] with whichever UIColor you would like. You may also wish to adjust the dimensions of headerView.

这篇关于UITableView - 更改部分标题颜色的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持!

09-04 21:38