【发布时间】:2017-11-10 14:41:26
【问题描述】:
我有一个 tableView,它有大约 5 个单元格,每个单元格都有不同的主题。单击单元格后,我想转到一个视图控制器,该控制器填充有 Firebase 数据,仅包含点击了特定主题的帖子。
override func viewDidLoad() {
super.viewDidLoad()
FIRDatabase.database().reference().child("books").observeSingleEvent(of: .value, with: { (snapshot:FIRDataSnapshot) in
if let postsDictionary = snapshot .value as? [String: AnyObject] {
self.Category = postsDictionary["Category"] as? String ?? ""
}})
}
override func prepare(for segue: UIStoryboardSegue, sender: Any?) {
if segue.identifier == "segue" {
let showBooks = segue.destination as! SearchTableViewController
showBooks.categorySegue = self.Category
}
}
在我的 Firebase 数据库中,我有一堆不同用户发布的帖子,在每个帖子中,他们设置了帖子所属的类别。例如,如果我单击具有主题的 tableView 单元格:经济学,我想转到只有经济学类别的视图控制器。
这是我检索归因于某些主题的帖子的方式:
databaseRef.child("books").queryOrdered(byChild: "category").queryEqual(toValue: categorySegue).observeSingleEvent(of: .value, with: { (snapshot) in
let key = snapshot.key
let snapshot = snapshot.value as? NSDictionary
snapshot?.setValue(key, forKey: "uid")
if(key == self.loggedUser?.uid)
{
print("same as logged in user")
}
else
{
self.usersArray.append(snapshot)
self.followUsersTableView.insertRows(at: [IndexPath(row:self.usersArray.count-1,section:0)], with: UITableViewRowAnimation.automatic)
}
}) { (error) in
print(error.localizedDescription)
}
tableView.tableFooterView = UIView()
【问题讨论】:
标签: ios uitableview firebase firebase-realtime-database