Этот вопрос уже задавался много раз, но, похоже, ничего не работает в моем конкретном случае.Как вы можете видеть в моем коде ниже, я создал расширение моего View Controller для моего UITableViewDataSource.Я пытаюсь получить информацию из моей базы данных в реальном времени Firebase и в зависимости от того, что я получаю, возвращает определенный IntПроблема в том, что всякий раз, когда я пытаюсь вернуть Int из моментального снимка Firebase, я получаю эту ошибку: «Неожиданное возвращаемое значение в void функции».Я понимаю причину этого, но я не уверен, как заставить мой код работать.Любые решения?
Мой код:
extension LikeOrDislikeViewController: UITableViewDataSource {
func tableView(_ tableView: UITableView, numberOfRowsInSection section: Int) -> Int {
let uid = Auth.auth().currentUser?.uid
Database.database().reference().child("Num Liked").child(uid!).observeSingleEvent(of: .value, with: { (snapshot) in
if let dictionary = snapshot.value as? [String: AnyObject] {
let numMoviesLiked = ((dictionary["Number of Movies Liked"] as? Int))!
if numMoviesLiked%4 == 0 {
return numMoviesLiked/4
}
}
})
return 10
}
func tableView(_ tableView: UITableView, cellForRowAt indexPath: IndexPath) -> UITableViewCell {
let cell = UITableViewCell()
cell.backgroundColor = UIColor.red
tableView.rowHeight = 113
cell.textLabel?.text = "\(indexPath.row)"
return cell
}
}