2017-08-11 46 views
1

データを取得してテーブルビューに設定しようとしました。私はこれに本当に成功していません。Swift 3のFirebaseから取得したデータをTableViewに取り込み

イメージとテキストを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でこれに関するドキュメントが見つかりません

答えて

0

検索されたデータをモデルオブジェクトに入力し、テーブルビューに供給することをお勧めします。今、あなたはあなたがfirebaseから、このモデルオブジェクトになったJSONデータを供給する必要が

class Person { 
    var firstname: String 
    var lastname: String 

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

これはどのように見えるか、モーダルオブジェクトです。モデルオブジェクトが準備できたら、テーブルビューをロードする必要があります。テーブルビューには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 
     } 
+0

これは私の状況でどのように使用されますか? firebaseのデータを取得し、それをtableView ... Firebaseの方法に設定することによって。 – StrawHat

+0

あなたはretrivedDataを持っています。モデルオブジェクトクラスを作成し、それにデータを割り当てます。それを割り当てた後にテーブルビュー –

+0

を見てください:https://www.codementor.io/brettr/two-basic-ways-to-populate-your-uitableview-du107rsyx –

関連する問題