Meine Datenbank BaumSwift Firebase Abrufen von Daten in Tableview
Hallo, Ich versuche, Daten abzurufen, um zu Tableview, aber obwohl ich Daten von Firebase Datenbank lesen kann, ich kann sie nicht in der Tabellenansicht angezeigt werden . Mein Code ist unten, ich hoffe du kannst mir helfen.
class Calls {
var callType: String?
var callHospital: String?
init(callType: String?, callHospital: String?) {
self.callType = callType
self.callHospital = callHospital
}
}
class myCallsViewController: UIViewController, UITableViewDelegate, UITableViewDataSource {
var ref:DatabaseReference!
var myCallList = [Calls]()
@IBOutlet weak var callListTableView: UITableView!
func numberOfSections(in tableView: UITableView) -> Int {
return 1
}
func tableView(_ tableView: UITableView, numberOfRowsInSection section: Int) -> Int {
return myCallList.count
}
func tableView(_ tableView: UITableView, cellForRowAt indexPath: IndexPath) -> UITableViewCell {
let cell = tableView.dequeueReusableCell(withIdentifier: "customcell", for: indexPath) as! myCallsViewControllerTableViewCell
let test = myCallList[indexPath.row]
cell.callType?.text = test.callType
cell.callHospital?.text = test.callHospital
return cell
}
override func viewDidLoad() {
super.viewDidLoad()
callListTableView.dataSource = self
callListTableView.delegate = self
LoadCalls()
}
func LoadCalls() {
ref = Database.database().reference()
let userID = Auth.auth().currentUser?.uid
ref.child("calls").queryOrdered(byChild: "userID").queryEqual(toValue: userID!).observe(.childAdded, with: { (snapshot) in
if snapshot.childrenCount > 0{
self.myCallList.removeAll()
for result in snapshot.children.allObjects as! [DataSnapshot]{
let results = result.value as? [String : AnyObject]
let type = results?["calltype"]
let hospital = results?["hospital"]
let myCalls = Calls(callType: type as! String?, callHospital: hospital as! String?)
self.myCallList.append(myCalls)
}
self.callListTableView.reloadData()
}
})
}
Können Sie bitte eine ** print-Anweisung setzen ** innerhalb der for loop von LoadCalls und zeige uns das Ergebnis – Siyavash
Ich setze die dump-Anweisung so: lass myCalls = Anrufe (callType: type als! String ?, callHospital: Krankenhaus als! String?) self.myCallList.append (myCalls) dump (myCalls) und das Ergebnis ist Kan_Bagisi_Portali.Calls # 0 - Calltype: nil - callHospital: nil ▿ Kan_Bagisi_Portali.Calls # 0 - Calltype: nil - callHospital : nil ▿ Kan_Bagisi_Portali.Calls # 0 - callType: null - callHospital: nil .... geht weiter so –
Ich möchte überprüfen, ob Sie tatsächlich irgendwelche Daten von Firebase erhalten, da es nicht scheint ein Problem mit Ihrem Code sein – Siyavash