reloadData()不更新父的TableView

问题描述:

我有一个自定义TableViewControllerLibraryTableViewControllerreloadData()不更新父的TableView

class LibraryTableViewController: UITableViewController { 

包含此数据进行渲染。

变种项目:[项目] = []

然后,我有另一个类火力地堡继承的LibraryTableViewController作为代表。 (我不知道这是否是正确的描述。)

class FirebaseDB : LibraryTableViewController { 

然后,我有FirebaseDB的全局实例作为

让数据库= FirebaseDB()

我有一位观察员正在聆听Firebase中数据库中的更改并正在更新

self.items

然后,尝试刷新LibraryTableViewController使用

self.tableView.reloadData()

我可能是错的理解我目前的问题。我的想法是,项目阵列我更新是不一样的实例作为tableView,我在应用中看到。它正在更新其未被上的应用程序提供的FirebaseDB实例数据库的项目。我如何确保正确的实例正在更新?

+0

确保您更新“项目”阵列和你的self.tableView.reloadData功能实际上发生。你可以在你的reloadData函数旁边加上print(“Ok”)。 –

+0

它不更新“项目”阵列。 LibraryTableViewController实际上有一个项目didSet,它打印出正在分配的内容。它打印出的是什么,从火力地堡分配以及什么是对的观点。基本上有两个“项目”;我只想从LibraryTableViewController中更新一个。 –

大量的代码所缺少 但你可以检查:

  1. 线程必须是主要的,也许你从后台调用
  2. 检查是改变 的数字为您
  3. 检查项目在的tableview不为零
  4. 检查委托也许它也无

,但最好给我们更多的代码)