从另一个 ViewController Swift 4.2 重新加载 tableView
reload tableView from Another ViewController Swift 4.2
当我尝试从另一个 VC reloadData()
调用方法时,应用程序崩溃 Fatal error: Unexpectedly found nil while unwrapping an Optional value
由于 tablview nil 如何解决它。
FavoritesFiltersViewController.shareInstance.reloadData()
检查调用 FavoritesFiltersViewController.shareInstance
时触发的初始化函数
看来您没有给 tableView 属性 赋值。
只是为了检查一下,您可以从中删除可选项,看看编译器是否因为它没有初始值而抱怨。
- 您可以使用 notificationCenter 为来自
的重新加载 tableView 数据
另一个 viewController 如下所示:
1.您可以将此行添加到另一个 viewController.
NotificationCenter.default.post(name: NSNotification.Name(rawValue: "newDataNotif"), object: nil)
2。将此行(viewDidLoad)添加到包含 tableView.
的 viewController
NotificationCenter.default.addObserver(self, selector: #selector(self.refresh), name: NSNotification.Name(rawValue: "newDataNotif"), object: nil)
3。添加此选择器方法以重新加载 tableView 数据。
@objc func refresh() {
self.tblview.reloadData() // a refresh the tableView.
}
这工作正常。谢谢。
感谢每一个 one.Finally 的研发。我找到了以下解决方案。并且工作正常。
let fav:FavoritesFiltersViewController!
fav.reloadData()
当我尝试从另一个 VC reloadData()
调用方法时,应用程序崩溃 Fatal error: Unexpectedly found nil while unwrapping an Optional value
由于 tablview nil 如何解决它。
FavoritesFiltersViewController.shareInstance.reloadData()
检查调用 FavoritesFiltersViewController.shareInstance
时触发的初始化函数
看来您没有给 tableView 属性 赋值。
只是为了检查一下,您可以从中删除可选项,看看编译器是否因为它没有初始值而抱怨。
- 您可以使用 notificationCenter 为来自
的重新加载 tableView 数据 另一个 viewController 如下所示:
1.您可以将此行添加到另一个 viewController.
NotificationCenter.default.post(name: NSNotification.Name(rawValue: "newDataNotif"), object: nil)
2。将此行(viewDidLoad)添加到包含 tableView.
的 viewControllerNotificationCenter.default.addObserver(self, selector: #selector(self.refresh), name: NSNotification.Name(rawValue: "newDataNotif"), object: nil)
3。添加此选择器方法以重新加载 tableView 数据。
@objc func refresh() {
self.tblview.reloadData() // a refresh the tableView.
}
这工作正常。谢谢。
感谢每一个 one.Finally 的研发。我找到了以下解决方案。并且工作正常。
let fav:FavoritesFiltersViewController!
fav.reloadData()