如何显示我的iOS快速列表视图控制器的Firebase信息?

我很难将Firebasejoin我的控制器。 由于我能够打印到控制台,Firebase工作正常。 我需要能够显示我的应用程序中的所有数据。 请协助! // // All.swift //保证价格//

在这里输入图像说明

import Foundation import UIKit import Firebase class All: UINavigationController, UITableViewDataSource, UITableViewDelegate { var items: [String] = [] var tableView: UITableView! let cellIdentifier = "CellIdentifier" override func viewDidLoad(){ super.viewDidLoad() self.tableView = UITableView(frame:self.view!.frame) self.tableView!.delegate = self self.tableView!.dataSource = self self.tableView!.registerClass(UITableViewCell.self, forCellReuseIdentifier: cellIdentifier) self.view?.addSubview(self.tableView) let ref = Firebase(url:"https://sizzling-inferno-451.firebaseio.com/services") ref.observeSingleEventOfType(.Value, withBlock: { snapshot in for child in snapshot.children { // let key = child.key //returns -Jikaijsipaij and -kalksdokoas // let name = child.value.objectForKey("service_name") as NSString? //// // self.items.append(key) } // do some stuff once print(snapshot.value) // get these values and put them in the cell's text view. key is more important print(snapshot.key) // add to the array and just this array self.tableView!.reloadData() }) } func tableView(tableView: UITableView, numberOfRowsInSection section: Int) -> Int { return items.count } func tableView(tableView: UITableView, cellForRowAtIndexPath indexPath: NSIndexPath) -> UITableViewCell { let cell = tableView.dequeueReusableCellWithIdentifier(cellIdentifier, forIndexPath: indexPath) // Fetch Fruit let fruit = items[indexPath.row] // Configure Cell cell.textLabel?.text = fruit return cell } // onclick printing func tableView(tableView: UITableView, didSelectRowAtIndexPath indexPath: NSIndexPath) { print(items[indexPath.row]) } 

}

这里有一个快速的片段来填充一个块内的数组,然后一旦填充重新加载tableview显示数据。

 user_id_0 name: "Fred" friend: "Barney" 

在所有用户中读取代码,遍历它们并提取每个名称并将其添加到数组中:

  var namesArray: [String] = [] ref.observeSingleEventOfType(.Value, withBlock: { snapshot in for child in snapshot.children { let name = child.value["name"] as! String namesArray.append(name) } self.myTableView.reloadData() })