gpt4 book ai didi

ios - Swift 不止一次重新加载 TableView

转载 作者:搜寻专家 更新时间:2023-11-01 06:27:35 24 4
gpt4 key购买 nike

我不止一次尝试在 swift 中重新加载 tableview。如下面的代码所示,最初,在 0.5 秒后,tableview“重新加载”并且加载了来自 Firebase 的 tableview 的所有元素;然而,5.0 秒后,当调用 runTimer() 时,tableview 不会重新加载。本质上,每当 Firebase 中更新某些内容时,我都试图“重新加载”数据,但似乎没有任何效果。解决此问题的任何帮助都值得赞赏,因为我已经看过所有 SO 并且没有任何运气。

 override func viewDidLoad() {
super.viewDidLoad()

checkFireBase()

tableViewResults.delegate = self
tableViewResults.dataSource = self

let nibName = UINib(nibName: "TableViewCell", bundle: nil)
tableViewResults.register(nibName, forCellReuseIdentifier: "tableCell")

txtsearchBar.addTarget(self, action: #selector(searchRecords(_ :)), for: .editingChanged)

DispatchQueue.main.asyncAfter(deadline: .now() + 0.5) {

self.tableViewResults.reloadData()

}

runTimer()
}

func runTimer(){
self.timer = Timer(fire: Date(), interval: 5.0, repeats: true, block: { (Timer) in
self.vehicleArray.removeAll()
DispatchQueue.main.async {
self.checkFireBase()

}
})

RunLoop.current.add(self.timer!, forMode: .defaultRunLoopMode)
self.tableViewResults.reloadData()

}

最佳答案

您可以使用 firebase 提供的监听器,而不是在这里使用计时器,当 Firebase 实时数据库中的数据更新时会自动调用这些监听器。请参阅此链接:

https://firebase.google.com/docs/database/ios/lists-of-data

关于ios - Swift 不止一次重新加载 TableView,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51916490/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com