swift - tableView.reloadData 不更新 UI

标签 swift uitableview reloaddata

我阅读了很多解决方案,但它们对我没有帮助

我有已添加到我的 View Controller 中的 TableView 。我将它作为 socket 拖到 Controller 上。

 @IBOutlet weak var tableView: UITableView!

在viewDidLoad中我添加了

tableView.dataSource = self
tableView.delegate = self

我有更新表中数据的方法:

private func updateModel() {
    guard let chatUid = UsersManager.sharedInstance.currentChatUID() else { return }

    RealtedUserApi().getRelatedUser("\(chatUid)", successHandler: {  (relatedUsers) in

        dispatch_async(dispatch_get_main_queue()) {
            self.relatedUsers = relatedUsers
            self.tableView.reloadData()
        }
    }) { (error) in
        print(error)
    }
}

当我进行下拉刷新时执行,但 UI 未更新

我在表格单元格中放置了断点,并且来自服务器的数据(例如用户的状态)已更新,但 UI 没有 - View 中的用户状态在单元格标签中保持不变

有人知道如何解决这个问题吗?

附: relatedUsers 是对象RelatedUser 的数组。它是我的 tableView 的来源。相关用户具有状态属性,该属性在服务器上更改,我需要更新单元格中的适当标签文本

最佳答案

这个问题太愚蠢了,所以我感到羞耻:

我在dequeueReusableCellWithIdentifier block 中评论了部分代码,其中也有return cell,但忘记了这一点。 但在 cellForRowAtIndexPath 的最后,我返回 UITableViewCell()

通常在这种情况下应用程序会崩溃,但在我的情况下却没有。所以我可以看到包含来自服务器的数据的行,但更新不起作用。

关于swift - tableView.reloadData 不更新 UI,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39984608/

相关文章:

uitableview - 在 iOS7 中将搜索栏与导航栏相结合时,会清空 UISearchbar 空间吗?

iphone - tableFooterView 上的 UIButtons 不响应事件

ios - UITableViewCell 的背景颜色

swift - UITableview 在重新加载时滚动到顶部

iphone - 更新 UITableView 数据

swift - Eureka表单不显示

swift - 将 swift 脚本编译为可执行文件

ios - 重新加载除一个单元格之外的表格 View

ios - subview 的边界在 layoutSubviews() 中为零

swift - 无法在 Swift 中使用 KeyType 类型的参数列表调用方法