быстрое шоу данных в табличном виде из Firebase - PullRequest
0 голосов
/ 30 апреля 2018

Я пытаюсь получить данные из базы данных и сохранить их в массив и показать его в tableView, но после запуска кода tableView ничего не показывает, так в чем проблема, я пропустил что-то, почему-то моя tableView reloadData доза не работает, и у моего массива, похоже, есть значения в методе, но вне метода массив пуст, я использую Swift 4.

 import UIKit
 import  Firebase
 import  ProgressHUD
class HistoryTableViewController: UITableViewController  {

var keys = ""
var arrayHistory : [String] =  []

@IBOutlet var hist: UITableView!


func RET  (){
    print("!!!!!!!!!!!!!!!!!!!!!")
   let messageDB = Database.database().reference().child("history")


    messageDB.observe(.childAdded) { (snapshot) in
        print("xxxxxxxxxxxxxxxxxxxxxxxxxxxx")

        let h = snapshot.value as! String

        self.arrayHistory.append(h)

        print(h)

        self.tableView.reloadData()

         ProgressHUD.dismiss()
    }

}

override func viewDidLoad() {

    super.viewDidLoad()

    ProgressHUD.show()

    RET()

    print(" basimmmmmmmmmmm")

}

  override func didReceiveMemoryWarning() {
    super.didReceiveMemoryWarning()
    // Dispose of any resources that can be recreated.
}

// MARK: - Table view data source

override func numberOfSections(in tableView: UITableView) -> Int {
    // #warning Incomplete implementation, return the number of sections
    return 0
}

override func tableView(_ tableView: UITableView, numberOfRowsInSection section: Int) -> Int {
    // #warning Incomplete implementation, return the number of rows
    return arrayHistory.count
}

 override func tableView(_ tableView: UITableView, cellForRowAt 
   indexPath: IndexPath) -> UITableViewCell {
    let cell = tableView.dequeueReusableCell(withIdentifier: "reuseIdentifier", for: indexPath)

    // Configure the cell...


   print ("hlooooooooooooooooo")

   cell.textLabel!.text = arrayHistory[indexPath.row]

    return cell
}
}

1 Ответ

0 голосов
/ 30 апреля 2018

У вас есть два варианта, вы удаляете этот метод:

override func numberOfSections(in tableView: UITableView) -> Int {
// #warning Incomplete implementation, return the number of sections
    return 0
}

ИЛИ вы изменяете его, чтобы вернуть желаемый номер раздела:

override func numberOfSections(in tableView: UITableView) -> Int {
// #warning Incomplete implementation, return the number of sections
    return yourCount // whatever section count you want
}

Если вы только удалите его, он автоматически вернет 1 для количества секций в табличном представлении.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...