Я пытаюсь получить это из моей базы данных Firebase:

И это мой VC, где я получаю данные из базы данных:
//
// VestibularesViewController_Design.swift
// newProject
//
// Created by Lucas Nascimento on 31/05/18.
// Copyright © 2018 Lucas Frazao. All rights reserved.
//
import UIKit
import Firebase
class VestibularesViewController_Design: UIViewController, UITableViewDataSource, UITableViewDelegate {
@IBOutlet weak var topView: UIView!
@IBOutlet weak var tableView: UITableView!
@IBOutlet var backgroundView: UIView!
@IBOutlet weak var nomeVestibular: UILabel!
var ref: DatabaseReference!
var databaseHandle: DatabaseHandle?
var datas = [Datas]()
var newItems: [Datas] = []
var meses = ["Maio","Junho","Agosto", "Agosto"]
var ano = ["2018", ""]
var dias = ["18","20", "30", "31"]
var eventos = ["Inicio das inscrições", "Fim das inscricoes", "1ª Prova", "2ª Prova"]
override func viewDidLoad() {
super.viewDidLoad()
nomeVestibular.text = "ENEM"
self.navigationController?.navigationBar.setBackgroundImage(UIImage(), for: UIBarMetrics.default)
self.navigationController?.navigationBar.shadowImage = UIImage()
self.navigationController?.navigationBar.isTranslucent = true
loadPosts()
}
func numberOfSections(in tableView: UITableView) -> Int {
return datas.count
}
func tableView(_ tableView: UITableView, numberOfRowsInSection section: Int) -> Int {
return 1
}
func loadPosts() {
Database.database().reference().child("Datas").observe(.childAdded, with: { (snapshot) in
DispatchQueue.main.async {
self.tableView.reloadData();
}
if let dict = snapshot.value as? [String: [Any]] {
let diaText = dict["dia"] as? String
let mesText = dict["mes"] as? String
let eventoText = dict["evento"] as? String
// let dateText = dict["date"] as? String
let data = Datas(diaText: diaText, mesText: mesText, eventoText: eventoText)
self.newItems.append(data)
print(self.newItems)
}
})
}
func tableView(_ tableView: UITableView, cellForRowAt indexPath: IndexPath) -> UITableViewCell {
let cell = tableView.dequeueReusableCell(withIdentifier:"cell", for: indexPath) as! VestibularesTableViewCell
//cell.titleNews.text = "O Edital do ENEM foi anunciado!"
ref = Database.database().reference()
cell.dia.text = datas[0].dia
cell.evento.text = datas[indexPath.row].evento
cell.mes.text = datas[indexPath.row].mes
if backgroundView.backgroundColor == UIColor.white {
cell.mes?.textColor = UIColor.black
cell.dia?.textColor = UIColor.black
cell.evento?.textColor = UIColor.black
}
return cell
}
override func viewWillDisappear(_ animated: Bool) {
//self.navigationController?.setNavigationBarHidden(false, animated: true)
}
override func didReceiveMemoryWarning() {
super.didReceiveMemoryWarning()
// Dispose of any resources that can be recreated.
}
}
Если я пытаюсь загрузить одно значение для каждой строки, оно работает нормально, но я не могу получить его для извлечения массива.
И вот где я создал класс "Datas":
class Datas {
var dia: String?
var mes: String?
var evento: String?
init(diaText: String?, mesText: String?, eventoText: String?) {
dia = diaText
mes = mesText
evento = eventoText
}
}
Я думаю, что что-то, относящееся к классу Datas, должно быть изменено для правильной работы.