У меня есть база данных с пользователями и их сообщениями, но когда я пытаюсь преобразовать дату пользователей в предопределенный просмотр таблицы. Вот код Я получаю два сообщения на выходе. Тот, что в заголовке, а также статус чтения TIC [2: 0x0]: 1:57
.
Я до некоторой степени проверил вывод кода.
import UIKit
import FirebaseFirestore
class ChatsVC: UIViewController, UITableViewDelegate, UITableViewDataSource{
@IBOutlet weak var chatsTableView: UITableView!
var recentChats: [NSDictionary] = []
//TableViewDataSource
func tableView(_ tableView: UITableView, numberOfRowsInSection section: Int) -> Int {
print ("here is the \(recentChats.count)")
return recentChats.count
}
func tableView(_ tableView: UITableView, cellForRowAt indexPath: IndexPath) -> UITableViewCell {
let cell = tableView.dequeueReusableCell(withIdentifier: "Cell", for: indexPath) as! RecentChatTableViewCell
let recent = recentChats[indexPath.row]
cell.generateCell(recentChat: recent, indexPath: indexPath)
return cell
}
//MARK: LoadRecentChats
func loadRecentChats() {
recentListener = reference(.Recent).whereField(kUSERID, isEqualTo: FUser.currentId()).addSnapshotListener({ (snapshot, error) in
guard let snapshot = snapshot else { return }
print ("snapshot count is \(snapshot.count)")
print ("\(snapshot)")
self.recentChats = []
if !snapshot.isEmpty {
let sorted = ((dictionaryFromSnapshots(snapshots: snapshot.documents)) as NSArray).sortedArray(using: [NSSortDescriptor(key: kDATE, ascending: false)]) as! [NSDictionary]
for recent in sorted {
if recent[kLASTMESSAGE] as! String != "" && recent[kCHATROOMID] != nil && recent[kRECENTID] != nil {
self.recentChats.append(recent)
}
}
self.chatsTableView.reloadData()
}
}
)}
}
Я отредактировал код, размещенный здесь из исходного файла, но оставил большой кусок, поскольку я только смутно знаю, откуда возникла ошибка. Снимок распечатывается должным образом, однако, когда он преобразуется в RecentChats.count, он печатает 0 независимо.