当前位置:  开发笔记 > IOS > 正文

使用Firebase Data Swift,Xcode 7填充UITableViewController

如何解决《使用FirebaseDataSwift,Xcode7填充UITableViewController》经验,为你挑选了1个好方法。

我有工作swiftXcode 7.我是全新的Swift, Xcode, and Firebase.我想UITableViewController在我的iOS应用程序中有三个s.前两个TableView controllers需要动态内容,第三个TableView控制器需要静态内容.我希望第二个和第三个TableView控制器根据在前一个TableView控制器上按下的内容显示数据.所有数据都来自我的Firebase.我不知道从哪里开始.请指出我正确的方向!谢谢!



1> David East..:

这个问题很广泛,因为它询问如何完成三个不同的任务.

如果你一次只要求一件事,我想你最好能得到答案.

我可以帮助您填充UITableViewControllerFirebase.

class MyTableViewController: UITableViewController {
  // your firebase reference as a property
  var ref: Firebase! 
  // your data source, you can replace this with your own model if you wish
  var items = [FDataSnapshot]() 

  override func viewDidLoad() {
    super.viewDidLoad()
    // initialize the ref in viewDidLoad
    ref = Firebase(url: "/items")
  }

  override func viewDidAppear(animated: Bool) {
    super.viewDidAppear(animated)
    // listen for update with the .Value event
    ref.observeEventType(.Value) { (snapshot: FDataSnapshot!) in

      var newItems = [FDataSnapshot]()

      // loop through the children and append them to the new array
      for item in snapshot.children {
        newItems.append(item as! FDataSnapshot)
      }

      // replace the old array
      self.items = newItems
      // reload the UITableView
      self.tableView.reloadData()
    }
  } 
}

这个技术使用了这个.Value事件,你也可以使用.ChildAdded,但是你必须跟踪.ChildChanged'.ChildRemoved' .ChildMoved,这会变得相当复杂.

适用于iOS的FirebaseUI库非常容易处理.

dataSource = FirebaseTableViewDataSource(ref: self.firebaseRef, cellReuseIdentifier: "", view: self.tableView)

dataSource.populateCellWithBlock { (cell: UITableViewCell, obj: NSObject) -> Void in
  let snap = obj as! FDataSnapshot

  // Populate cell as you see fit, like as below
  cell.textLabel?.text = snap.key as String
}

推荐阅读
oDavid_仔o_880
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有