当前位置 : 主页 > 手机开发 > ios >

ios – 当我从一个我认为的视图控制器返回时,为什么我的UITableView的格式完全出

来源:互联网 收集:自由互联 发布时间:2021-06-11
我有一个带有自定义单元格的UITableView,其中有一些标签可以动态决定单元格的高度.当我点击一个单元格并切换到一个新的视图控制器时,返回所有格式的单元格完全搞砸了,我无法弄清楚
我有一个带有自定义单元格的UITableView,其中有一些标签可以动态决定单元格的高度.当我点击一个单元格并切换到一个新的视图控制器时,返回所有格式的单元格完全搞砸了,我无法弄清楚是什么导致它.

这是细胞通常的样子:

我对它们设置了一些非常基本的约束.顶部标签固定在顶部和左侧边距上,并且必须始终从右侧开始> = 20.其他标签与第一个标签的左侧对齐,并在所有标签之间设置垂直间距.中间标签对边距具有正确的间距约束,底部标签与第一个的基线对齐,并且在所有标签之间具有水平间距.

当我回到这个表视图时,它看起来像这样:

我无法弄清楚导致它布局的原因与我离开时不同.如果我滚动它似乎“重置”它们回到它们应该是什么,但在初始加载时它们真的搞砸了.如果需要,我可以附加项目,但在故事板之外真的不多.

的cellForRowAtIndexPath:

override func tableView(tableView: UITableView, cellForRowAtIndexPath indexPath: NSIndexPath) -> UITableViewCell {
    let cell = tableView.dequeueReusableCellWithIdentifier("Cell", forIndexPath: indexPath) as CustomTableViewCell

    let object = objects[indexPath.row]

    cell.title1.text = object.name
    cell.title2.text = object.color
    cell.title3.text = object.roar

    return cell
}

示例项目:http://cl.ly/040L2z0q0V2d

当从segue返回时,表视图单元格似乎没有根据内容调整大小.使用示例项目,我在viewWillAppear中抛出了重新加载数据,这似乎解决了这个问题.

override func viewWillAppear(animated: Bool) {
    super.viewWillAppear(animated)
    self.tableView.reloadData()
}
网友评论