2

我已经使用viewDidLoad从我的表格视图中删除了分隔符左边距:

self.tableView.layoutMargins = UIEdgeInsetsZero
self.tableView.separatorInset = UIEdgeInsetsZero

在我的cellForRowAtIndexPath中:

cell.layoutMargins = UIEdgeInsetsZero

问题是页眉和页脚视图也被移动了,我想让它与单元格的内容保持一致。

在此处输入图像描述

我试图更改willDisplayHeaderViewwillDisplayFooterView中的框架但没有成功。有什么建议吗?谢谢!

4

3 回答 3

2

正如Memon Irshad建议的那样,我创建了一个新标签,但不是在viewForHeaderInSection中执行它,而是在willDisplayHeaderView中执行它,因为在使用此方法时,我们可以知道 headerView 的大小。

然后我隐藏 TableViewHeader 的原始 textLabel 并添加新的框架标签。你怎么看?有什么改进吗?

看起来像这样:

override func tableView(tableView: UITableView, willDisplayHeaderView view: UIView, forSection section: Int)
{
    let originView = view as! UITableViewHeaderFooterView

    let lbl = UILabel(frame: CGRectMake(15,originView.frame.height-30,originView.frame.size.width,20))

    // Setting up the new label
    lbl.numberOfLines = 0
    lbl.font  = Constants.Fonts.HeaderRow
    lbl.textColor = Constants.Colors.TextColored

    // Copying the original text content
    lbl.text = originView.textLabel?.text

    // Hidding the original label
    originView.textLabel?.hidden = true

    originView.addSubview(lbl)
}
于 2016-06-10T14:04:09.770 回答
1

页眉/页脚不能粘在单元格的内容上。我也为此浪费了很多时间

您必须在部分中添加一行并将其用作页眉/页脚

于 2016-06-10T10:25:54.903 回答
1

在标题视图中尝试此代码集自定义标签框架

    func tableView(tableView: UITableView, viewForHeaderInSection section: Int) -> UIView? {

    let view = UIView()
    let lbl = UILabel(frame: CGRectMake(15,2,self.view.frame.size.width,20))
    lbl.textColor = UIColor.whiteColor()
    lbl.text = "SOPORTE"
    lbl.font = UIFont(name: "Helvetica Neue", size: 15)
    view.addSubview(lbl)

    return view
}
于 2016-06-10T10:51:36.477 回答