我在ViewController中有一个tableView。在viewDidLoad
中,我有这段代码:
Alamofire.request(
URL(string: "https://AAA/BBB")!,
method: .get,
parameters: ["uid": Auth.auth().currentUser!.uid]).responseJSON { response in // method defaults to `.get`
print(response)
if let status = response.response?.statusCode {
switch(status){
case 200:
if let result = response.result.value {
self.JSON = result as! NSDictionary
self.goalsArray = Array(self.JSON.allKeys)
}
self.tableView.reloadData()
default:
print("error with response status: \(status): ")
}
}
}
tableView.delegate = self
tableView.dataSource = self
然后加载表,我有这个功能:
func tableView(_ tableView: UITableView, numberOfRowsInSection section: Int) -> Int {
// #warning Incomplete implementation, return the number of rows
print("called")
return goalsArray.count
}
据我了解,该表应加载goalsArray
中存在的所有数据元素并显示它们。但这不会发生
从屏幕快照中可以看到,无论数组中元素的数量如何,都会显示三行(在第二个屏幕快照中,数组中有4个元素)。我想念什么?我该如何解决?