【问题标题】:Populating TableView with retrieved data from Firebase with Swift 3使用 Swift 3 从 Firebase 检索到的数据填充 TableView
【发布时间】:2018-01-19 09:13:03
【问题描述】:

我尝试检索数据并将其设置为表格视图;我还没有真正做到这一点。

我想从 firebase 获取图像和文本到 tableView;

import UIKit
import Firebase

class HomePageViewController: UIViewController, UITableViewDelegate {

    @IBOutlet weak var homePageTableView: UITableView!

    var ref: DatabaseReference!
    var imageFiles = [Data]()
    var price = [String]()
    var refHandle:UInt!






    override func viewDidLoad() {
        super.viewDidLoad()

        ref = Database.database().reference()



        fetchUsers()

func fetchUsers() {

        refHandle = ref.child("Users").observe(.childAdded, with: { (<#DataSnapshot#>) in
            if let retrivedData = DataSnapshot.value(String : AnyObject) {
              ??? 
            }
        })

我知道这还没有完成,但我不知道如何从这一点继续。我怎么把它放到桌子上???以及如何正确检索数据。 使用最新更新的 firebase SDK 和 swift 3.0 找不到任何关于此的文档

【问题讨论】:

    标签: ios uitableview firebase swift3


    【解决方案1】:

    最佳做法是将检索到的数据输入模型对象并提供给表格视图。

    这是模态对象的样子:

        class Person {
        var firstname: String
        var lastname: String
    
        init(firstname: String, lastname: String) {
            self.firstname = firstname
            self.lastname = lastname
        }
    }
    

    现在您必须将从 firebase 获得的 JSON 数据提供给此模型对象。模型对象准备好后,您必须加载 tableview。 Tableview 有data source 方法。使用它们来展示如何在 tableview 中填充数据。

     func numberOfSections(in tableView: UITableView) -> Int {
                return 1
            }
            func tableView(_ tableView: UITableView, numberOfRowsInSection section: Int) -> Int {
                return modelObjectsArray.count
            }
    
            func tableView(_ tableView: UITableView, cellForRowAt indexPath: IndexPath) -> UITableViewCell {
                let cell = tableView.dequeueReusableCell(withIdentifier: "TableViewCell")!
                let modelObject = self.modelObjectsArray[indexPath.row] as! Person
                cell.textLabel?.text = modelObject.firstname
                return cell
            }
    

    【讨论】:

    • 那么在我的情况下如何使用它?通过检索 firebase 数据并将其设置到 tableView...Firebase 方式..
    • 您已检索数据。现在创建一个模型对象类并为其分配数据。分配后重新加载tableview
    • 看看这个:codementor.io/brettr/…
    • 但是不需要模型类?我知道它会更具可读性和更漂亮,但是我只有一个少数数据的列表……但这不是问题,我得到了设置的那部分并将数据填充到 tableView 中,但是现在如何用fireBase做到这一点?文档还没有更新,你看...
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-01-05
    • 1970-01-01
    相关资源
    最近更新 更多