ios - 如何覆盖 reloadRowsAtIndexPaths?

标签 ios xcode swift uitableview

我正在尝试覆盖 tableView 单元格的方法 reloadRowAtIndexPath

我想做的和你覆盖 cellForRowAtIndexPath 时一样:

func tableView(tableView: UITableView, cellForRowAtIndexPath indexPath: NSIndexPath) -> UITableViewCell
    {
        if(isUserTalking(indexPath))
        {
            return userMessageCell(indexPath)
        }
        else
        {
            if(isNotUserFirstMessage(indexPath))
            {
                return notUserFirstMessageCell(indexPath)
            }
            else
            {
                return notUserNotFirstMessageCell(indexPath)
            }
        }

    }

这样:

func tableView(tableView: UITableView, reloadRowsAtIndexPaths indexPath: NSIndexPath) -> UITableViewCell
    {
        print("job")
            if(isNotUserFirstMessage(indexPath))
            {
                return notUserFirstMessageCell(indexPath, showImage: false)
            }
            else
            {
                return notUserNotFirstMessageCell(indexPath, showImage: false)
            }
    }

但是当我使用 self.myTable.reloadRowsAtIndexPath 时,它从不调用覆盖版本。

你知道怎么解决吗?

最佳答案

reloadRowsAtIndexPaths 并不是真正的目的。你可能想使用 tableView(_:willDisplayCell:forRowAtIndexPath:) 代替。例如:

func tableView(tableView: UITableView, willDisplayCell cell: UITableViewCell, forRowAtIndexPath indexPath: NSIndexPath) {
    print("job")
    if isNotUserFirstMessage(indexPath) {
        configureNotUserFirstMessageCell(cell, showImage: false)
    } else {
        configureNotUserNotFirstMessageCell(cell, showImage: false)
    }
}

关于ios - 如何覆盖 reloadRowsAtIndexPaths?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37886353/

相关文章:

ios - 我在 appDelegate 中收到错误?

xcode - Swift:构建成功,一个空白的应用程序窗口和此消息出现:无法在(NSWindow)上设置(contentViewController)用户定义的检查属性

swift - Mac OS Xcode Swift 2.2 控制拖动标签和按钮到 appdelegate.swift 文件的问题

arrays - 快速传递具有不同内容的数组

ios - 减少 UICollectionViewCells 之间的空间

ios - 在选择器中为 scheduleTimerwithTimeInterval 传递参数

ios - 如何使 REFrostedViewController 与 UINavigationController 一起工作

ios - 在 Xcode 8 中添加开发团队?

ios - iOS中的双排导航栏

ios - 使用 Swift 的选项卡式 iOS WebKit 浏览器