小编beh*_*ble的帖子

自定义tableView的标题视图与表视图单元格重叠

我设计了一个自定义视图作为我的UITableView的标题视图.就像这样(我只是将图像链接放在这里而不是图像,因为我没有10个声誉.)

http://i.stack.imgur.com/KhNbE.png

然后在我用UITableViewController我的这个视图tableHeaderView

override func viewDidLoad() {
     tableView.tableHeaderView = headerView!
   //...other things
}
Run Code Online (Sandbox Code Playgroud)

我从JSON获得文本来实现ContentLabel.如果文本很长,headerView将像下面的图像一样重叠单元格.(短文本可以)

http://i.stack.imgur.com/gtO2g.png

部分是可见的,但是两行单元格已被headerView重叠.我不确定我是否做了错误的约束或代码ContentLabel.下面是我的代码配置的contentLabelTopicHeaderView.swift

var content: String? {
  didSet {
    self.contentLabel.text = content!

    self.setNeedsUpdateConstraints()
    self.updateConstraintsIfNeeded()
    self.setNeedsLayout()
    self.layoutIfNeeded()

  }
}
func setFrameHeight(height: CGFloat) {
  var frame = self.frame
  frame.size.height = height
  self.frame = frame
}

override func layoutSubviews() {
  super.layoutSubviews()
  self.contentLabel.preferredMaxLayoutWidth =     self.contentLabel.alignmentRectForFrame(contentLabel.frame).width
  self.titleLabel.preferredMaxLayoutWidth = self.titleLabel.bounds.size.width
  self.authorLabel.preferredMaxLayoutWidth = self.authorLabel.bounds.size.width
  self.setFrameHeight(CGRectGetMaxY(contentLabel.frame) + 8)

}  
Run Code Online (Sandbox Code Playgroud)

我在SO中浏览了类似的问题,但似乎找不到解决方案来解决我的问题.任何人都可以帮忙吗?

编辑:

我记录了我的第一个tableView单元格的起始CGPoint和headerView的高度.它显示正确的数字,这意味着第一个单元格垂直于标题视图旁边.当然,由于部分的高度,有22分的差距.

headerheight:600.0
first cell's …
Run Code Online (Sandbox Code Playgroud)

uitableview ios

6
推荐指数
1
解决办法
6941
查看次数

标签 统计

ios ×1

uitableview ×1