FirebaseデータベースからSwiftの特定のラベルに自分のデータを取得しようとしています。私はTableView
(Main.storyboard
として)に2つのラベルが1
と2
とタグ付けされています。 ViewController
でSwift:Firebaseデータベースからラベルにデータを取得
、私はこのコードを持っている:
import UIKit
import Firebase
import FirebaseDatabase
struct confStruct {
let title : String!
let place : String!
}
class EVS_Table_VC: UITableViewController {
var conf = [confStruct]()
override func viewDidLoad() {
super.viewDidLoad()
let databaseRef = FIRDatabase.database().reference()
databaseRef.child("conferences").queryOrderedByKey().observeEventType(.ChildAdded, withBlock: {
snapshot in
self.tableView.reloadData()
})
}
override func tableView(tableView: UITableView, numberOfRowsInSection section: Int) -> Int {
return conf.count
}
override func tableView(tableView: UITableView, cellForRowAtIndexPath indexPath: NSIndexPath) -> UITableViewCell {
let cell = tableView.dequeueReusableCellWithIdentifier("Cell")
let label1 = cell?.viewWithTag(1) as! UILabel
label1.text = conf[indexPath.row].title
let label2 = cell?.viewWithTag(2) as! UILabel
label2.text = conf[indexPath.row].place
return cell!
}
}
をしかし、何もシミュレータに現れません。誰かがこれを解決する方法を提案していますか?この構造体は、 データベースから自分の変数を初期化しますか? (title
,place
)。
JSONツリー:
"conferences": {
"Key": {
"date": "some date"
"deadline": "some deadline"
"place": "some place"
"title": "some title"
}
}
**へ** conf **テーブルデータをリロードする前 –
JSONツリーを与えてください。 – Dravidian
@ Dravidianを編集しました。 – gryzek