一尘不染

tableView节标题消失SWIFT

swift

我设置了一个tableView,以便在触摸一个单元格时,它的高度会扩展以显示更多信息。tableView有5个部分。

我有一个错误:当单元格扩展时,该单元格下面的所有headersCells都不可见。控制台输出以下内容:“
[31233:564745]没有正在重用的表单元格的索引路径”

在我的情节提要中,我有2个自定义单元:"myCell"用于数据承载单元和"headerCell"标题。

func tableView(tableView: UITableView, didSelectRowAtIndexPath indexPath: NSIndexPath) {

   let thisGoal : GoalModel = goalArray[indexPath.section][indexPath.row]


    if self.currentPath != nil && self.currentPath == indexPath  {
        self.currentPath = nil
    } else {
        self.currentPath = indexPath
    }
    tableView.beginUpdates()
    tableView.endUpdates()
}

如果我tableView.reloadData()在开始/结束更新之间输入,尽管标题背景变黑并丢失了动画,它仍然可以正常工作。

我已经在标题中声明了所有内容: func tableView(tableView: UITableView, viewForHeaderInSection section: Int) -> UIView?

我想念什么?我真的希望tableView仍然有动画,并保留background clearColor()

提前致谢。我确实阅读了客观的C答案,但无法让它们为我工作。我真的很感谢SWIFT的帮助。

我认为问题在于表单元的重用没有索引路径。


阅读 240

收藏
2020-07-07

共1个答案

一尘不染

我在控制台输出中找到了答案。在标头函数中使用以下代码:

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

不要返回您的headerCell或可重复使用的标识符。返回reuseIdentifier.contentView。对我来说是:return headerCell!.contentView

2020-07-07