Firebaseデータベースからテーブルビューを更新しようとしています。テーブルビューがFirebaseで更新されない
- レポート:
- ランダムに生成されたレポートのID番号:
-
- メイク:
- を "車の作る" マイデータは、この(自動車を報告するため)のように構成されています
- モデル:「モデルの作成」
私は正しくデータを呼び出していないと思います。ランダムなレポートIDを選択する方法がわかりません。しかし、私が紛失していることが他にもあるかもしれません。私はこれをテストすることはできないんだけど、私はあなたがしようとしていたことを感じているセルのテキストで
var reportList:[String] = []
var ref: DatabaseReference!
var handle: DatabaseHandle?
@IBOutlet weak var reportsTableView: UITableView!
@IBAction func backButtonPressed(_ sender: UIBarButtonItem) {
self.performSegue(withIdentifier: "reportsToHome", sender: self)
}
public func tableView(_ tableView: UITableView, numberOfRowsInSection section: Int) -> Int {
return reportList.count
}
public func tableView(_ tableView: UITableView, cellForRowAt indexPath: IndexPath) -> UITableViewCell{
let cell = UITableViewCell(style: .default, reuseIdentifier: "cell")
cell.textLabel?.text = reportList[indexPath.row]
return cell
}
override func viewDidLoad() {
super.viewDidLoad()
ref = Database.database().reference()
handle = ref.child("Reports").observe(.childAdded, with: { (snapshot) in
if (snapshot.value as? String) != nil
{
let make = String(describing: self.ref.child("Reports").child("make"))
let model = String(describing: self.ref.child("Reports").child("model"))
self.reportList.append(make + model)
self.reportsTableView.reloadData()
}
}
// Do any additional setup after loading the view.
)}
override func didReceiveMemoryWarning() {
super.didReceiveMemoryWarning()
// Dispose of any resources that can be recreated.
}
}
複数のレポートを取得しようとしていますか、または1つのレポートしかありませんか? – Grady
複数のレポートがあります。データベースは、新しいレポートが入ったかどうかをチェックして、それを投稿します。または、少なくともそれが想定されています。 – Bob