Swift索引0超出tableview中空数组的边界

时间:2015-03-22 22:07:14

标签: ios uitableview swift parse-platform

我尝试使用PFTableViewCell连接到主电视控制器的2个标签来解析tableview:

当我添加(numberOfSectionsInTableView + numberOfRowsInSection)应用程序崩溃时

但是当我删除它时它可以工作,但它没有显示任何内容。

enter image description here enter image description here

这是表格视图单元格

class courseCell: PFTableViewCell {

    @IBOutlet var name: UILabel!

    @IBOutlet var location: UILabel!

}

这是表视图控制器

class courseTVC: PFQueryTableViewController {


override init!(style: UITableViewStyle, className: String!) {
    super.init(style: style, className: className)
}


required init(coder aDecoder:NSCoder)
{
    super.init(coder:aDecoder)



    self.parseClassName = "courses"
    self.textKey = "Location"
    self.pullToRefreshEnabled = true
    self.paginationEnabled = false

}
override func queryForTable() -> PFQuery! {
    var query = PFQuery(className: "courses")
    query.orderByDescending("Location")
    return query
}


  override func numberOfSectionsInTableView(tableView: UITableView) -> Int {
        return 1
    }

override func tableView(tableView: UITableView, numberOfRowsInSection section: Int) -> Int {
    return 4
}


override func tableView(tableView: UITableView!, cellForRowAtIndexPath indexPath: NSIndexPath!, object: PFObject!) -> PFTableViewCell {
    var cell = tableView.dequeueReusableCellWithIdentifier("cell" , forIndexPath : indexPath) as? courseCell
    if cell == nil
    {
        cell = courseCell(style: UITableViewCellStyle.Default, reuseIdentifier: "cell")
    }


    cell!.name.text = object["Price"] as! String!
    cell!.location.text = object["Location"] as! String!




    return cell!
}

debugging message

我不知道如何解决这个问题

1 个答案:

答案 0 :(得分:2)

查看PFQueryTableViewControllerhttps://www.parse.com/docs/ios/api/Classes/PFQueryTableViewController.html的文档,看起来您不应该重写这两种方法。

应根据您的– tableView:cellForRowAtIndexPath:object:为表中的所有行调用

objects。您不应该覆盖numberOfSectionsInTableViewnumberOfRowsInSection,因为Parse控制器会为您处理所有这些。您正在重写这些方法并对数字进行硬编码,这会导致Parse尝试获取和对象超出范围的行(它不存在)。看起来您的数据源中实际上没有对象。