【问题标题】:after call reloadData() in swift uiTableView, old items remaining and new ones not shown在 swift uiTableView 中调用 reloadData() 后,旧项目剩余,新项目未显示
【发布时间】:2018-07-13 14:39:39
【问题描述】:

我在TabBar 中有一个TableView,它的数据是从服务器获取的。加载数据后,我调用reloadData(),所有项目都在第一时间显示。当用户更改TabBar 的选项卡并返回当前选项卡时,应更新TableView 的项目。但是当我第二次调用reloadData() 时,旧数据不会被删除,新数据不会显示出来。

我的代码是:

if response.result.isSuccess { // Response is success

    if let estateFileResponse: EstateFileResponse = response.result.value { // Response is type of EstateFileResponse

        // Dismiss loader
        ShowHUD.sharedInstance.dismiss()

        // Append estateFile items to items list
        if estateFileResponse.estateFileList.count > 0 {

            self.items = estateFileResponse.estateFileList

            self.tableView.reloadData()
        }
    }
}

此代码仅第一次工作。

【问题讨论】:

  • 调用 viewWillAppear 中的所有方法而不是 viewDidLoad

标签: uitableview swift3 reloaddata


【解决方案1】:

尝试同步重新加载数据

DispatchQueue.main.async {
   self.tableView.reloadData()
}

【讨论】:

    猜你喜欢
    • 2022-11-14
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2020-07-25
    • 2021-07-27
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多