如何在TableView中设置标题的背景颜色?

时间:2016-10-28 08:59:24

标签: swift uitableview

我发现了类似的问题,但没有一个能帮助我。 我需要将表格中标题的背景颜色设置为白色,现在为灰色(与表格的背景颜色相同)。

以下是我的tableView功能:

func tableView(_ tableView: UITableView, willDisplayHeaderView view: UIView, forSection section: Int)
{
    let header = view as! UITableViewHeaderFooterView
    header.backgroundColor = UIColor.white
    header.textLabel?.font = UIFont(name: "Futura", size: 13)!
    header.textLabel?.textColor = UIColor.blue
}

func tableView(tableView: UITableView, ViewForHeaderInSection section: Int) -> UIView? {
    tableView.backgroundColor = UIColor.white
    return tableView
}

func tableView(_ tableView: UITableView, titleForHeaderInSection section: Int) -> String?
{
    return titles[section]
}

我将背景颜色设置为白色,但没有任何变化。

4 个答案:

答案 0 :(得分:4)

在Swift 3中,这对我有用:

<script>
function divclick()
{
    var button = document.getElementById('divBtn_');
    button.click();

    return false;
}
</script>

答案 1 :(得分:3)

Swift 3 - 我的诀窍是设置标题的 contentView 的backgroundColor。

   func tableView(_ tableView: UITableView, viewForHeaderInSection section: Int) -> UIView? {
            let header = tableView.dequeueReusableHeaderFooterView(withIdentifier: "header") as? CollapsibleTableViewHeader ?? CollapsibleTableViewHeader(reuseIdentifier: "header")
            header.contentView.backgroundColor = .blueSteel
            return header
    }

希望能有所帮助。

答案 2 :(得分:2)

使用UItableview的viewForHeaderInSection方法和创建UIview

func tableView(tableView: UITableView, viewForHeaderInSection section: Int) -> UIView? {
    let headerView = UIView()
    headerView.backgroundColor = UIColor.white
    return headerView
}
func tableView(tableView: UITableView, heightForHeaderInSection section: Int) -> CGFloat {
    return 15
}

答案 3 :(得分:0)

下面的Swift 3。与之前的答案有一个明显的区别,请不要忘记覆盖关键字。如果你这样做,它就不会覆盖这个功能,也不会起作用。

   override func tableView(_ tableView: UITableView, viewForHeaderInSection section: Int) -> UIView? {
        let headerView = UIView()
        headerView.backgroundColor = UIColor.darkGray
        return headerView
    }
    override func tableView(_ tableView: UITableView, heightForHeaderInSection section: Int) -> CGFloat {
        return 15
    }