我正在查询解析以获取一些信息并在 UITableViewCell 中显示信息,表格中只有一个条目,一个包含虚构信息的测试条目,但表格显示第一个单元格空白,然后显示第二个单元格的信息在表中。我试图用谷歌搜索这个并添加更多行测试信息但是无论哪种方式表格在开头显示一个单元格没有信息 这是我的代码:
var query = PFQuery(className: "marathons")
query.orderByAscending("end")
query.findObjectsInBackgroundWithBlock { (marathons, error:NSError?) -> Void in
if(error == nil ){
//success
for marathon in marathons! {
self.Name.append(marathon["Name"] as! String)
self.entryNumber.append(marathon["Number"] as! Int)
self.totalEntries.append(marathon["entries"] as! Int)
self.runnerDistance.append(marathon["distance"] as! Int)
}
self.TableView.reloadData()
}else {
print(error)
}
}
}
override func didReceiveMemoryWarning() {
super.didReceiveMemoryWarning()
// Dispose of any resources that can be recreated.
}
//MARK: TableView
func tableView(tableView: UITableView, numberOfRowsInSection section: Int) -> Int {
return Name.count
}
func tableView(tableView: UITableView, cellForRowAtIndexPath indexPath: NSIndexPath) -> UITableViewCell {
let singleCell: TableViewCell = tableView.dequeueReusableCellWithIdentifier("Cell") as! TableViewCell
singleCell.Name.text = names[indexPath.row]
singleCell.entryNumber.text = "\(entryNumbers[indexPath.row])"
singleCell.totalEntries.text = "\(entires[indexPath.row])"
singleCell.runnerDistance.text = "\(distance[indexPath.row])"
return singleCell
}
Name、entryNumber、totalEntries 和 runnerDistance 定义为:
@IBOutlet var Name: UILabel!
@IBOutlet var entryNumber: UILabel!
@IBOutlet var totalEntries: UILabel!
@IBOutlet var runnerDistance: UILabel!
有什么建议吗?我正在使用 swift、parse 作为我的后端,以及 XCODE 7
最佳答案
代码中定义的模型对象在哪里?您要附加到名为 Name
、entryNumber
、totalEntries
和 runnerDistance
的对象,但您正在尝试从名为 entryNumbers
entries
和 distance
的属性分配值。
编辑:
我明白这是怎么回事了。根据您的评论,您正在像这样初始化数组:
var 名称 = [String()]
这实际上创建了一个数组,其中包含一个空字符串 [""]
。当您调用 append
时,您将向数组添加另一个元素,这使您以 ["","John"]
结束。如果你想要一个空数组,你应该像这样创建它:
var names = [String]()
关于ios - 自定义 UITableViewCell 的第一个单元格为空,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33426698/