我似乎无法从新用户发送新消息或已从tableview中的用户发送的新消息与大多数消息传递应用程序一样。我之前已经问过这个问题,并尝试按照链接中的说明进行操作,这个链接可能会有人发送给我(How do you properly order data from Firebase chronologically),但无论我尝试什么,我仍然无法获得所需的效果< / p>
func getChatsFeed(){
//following the links instruction "timeStamp" is suppose help return fireBase children in reverse order. "atValue: time" is a value for the time when my viewDidload.
let queryChats = Database.database().reference().queryOrdered(byChild: "timeStamp").queryEnding(atValue: time, childKey: "timeStamp")
queryChats.observe(.childAdded) { (snapshot) in
if let snapvalue = snapshot.value as? Dictionary<String,Any>, let
sender = snapvalue["sender"] as? String, let receiver =
snapvalue["receiver"] as? String, let message = snapvalue["messageBody"] as?
String, let key = snapvalue["key"] as? String, let timeStamp = snapvalue["timeStamp"] as? String{
let newMessage = FeedMessage(sender: sender, receiver: receiver, messageBody: message, key: key, timeStamp: timeStamp)
feedUpdate.append(newMessage)
self.chatsTableView.reloadData()
}
}
}
我所包含的链接因为解决了很多StackOverflow用户的问题而获得了相当多的赞誉,所以也许我搞砸了某个地方,并不完全知道所有不同的Firebase方法,这可能就是这种情况。有人指点吗?
答案 0 :(得分:0)
使用其他方法,您已经将数据加载到feedUpdate中,只需执行此操作:
chatsTableView.reloadData()
let indexPath:IndexPath = IndexPath(row:0, section:0)
chatsTableView.scrollToRow(at: indexPath, at: UITableViewScrollPosition .top, animated: true)