无法重新加载Array<any>的问题,可以在从Firebase获取数据后,将数据存储在一个数组中,然后在TableView中使用该数组来显示数据。当需要重新加载数据时,可以直接对数组进行操作,然后调用TableView的reloadData()方法来刷新数据。
下面是一个简单的示例代码:
import UIKit
import Firebase
class ViewController: UIViewController, UITableViewDataSource, UITableViewDelegate {
@IBOutlet weak var tableView: UITableView!
var dataArray: [Any] = []
override func viewDidLoad() {
super.viewDidLoad()
// 从Firebase获取数据
fetchDataFromFirebase()
}
func fetchDataFromFirebase() {
// 从Firebase获取数据的代码,将获取的数据存储在dataArray数组中
// ...
// 数据获取完成后刷新TableView
tableView.reloadData()
}
// MARK: - UITableViewDataSource
func tableView(_ tableView: UITableView, numberOfRowsInSection section: Int) -> Int {
return dataArray.count
}
func tableView(_ tableView: UITableView, cellForRowAt indexPath: IndexPath) -> UITableViewCell {
let cell = tableView.dequeueReusableCell(withIdentifier: "Cell", for: indexPath)
// 根据indexPath从dataArray数组中获取数据,并设置到cell中
let data = dataArray[indexPath.row]
// ...
return cell
}
// MARK: - UITableViewDelegate
// 可以添加其他UITableViewDelegate的相关方法
}
在上述代码中,dataArray是存储数据的数组,fetchDataFromFirebase()方法用于从Firebase获取数据并刷新TableView,tableView(:numberOfRowsInSection:)方法返回dataArray数组的长度,tableView(:cellForRowAt:)方法从dataArray数组中获取数据并设置到cell中。
这样,当从Firebase获取数据后,调用fetchDataFromFirebase()方法可以重新加载数据,并且自动刷新TableView。
领取专属 10元无门槛券
手把手带您无忧上云