目前正在开发一种在表加载之前加载查询的方法,目前数组在页面加载之前不会保留任何内容。上一页的Segue不是一个选项,因为我有很多段落离开此页面。 Parse还是新手,有一种方法可以在表加载之前完成此查询。
覆盖func queryForTable() - > PFQuery! {
var query = PFQuery(className: "Tasks")
switch (segmentControl.selectedSegmentIndex){
case 0:
var unfinishedTaskQuery = PFQuery(className: "Students")
unfinishedTaskQuery.whereKey("username", equalTo: PFUser.currentUser().username)
unfinishedTaskQuery.getFirstObjectInBackgroundWithBlock({ (object: PFObject!, error: NSError!) -> Void in
self.tasks = object["taskIDs"].copy() as [Int]
self.completedTasks = object["completedTaskIDs"].copy() as [Int]
self.loadObjects()
})
query = PFQuery(className: "Tasks")
query.whereKey("taskID", containedIn: self.tasks)
// Add a where clause if there is a search criteria
query.orderByAscending("taskDetail")
return query
case 1:
query.whereKey("taskID", containedIn: completedTasks)
println("tasks")
// Add a where clause if there is a search criteria
println("yes")
query.orderByAscending("taskDetail")
return query
default:
break;
}
return query
}
答案 0 :(得分:1)
认为这是一个简单的修复,虽然这确实会导致“主线程上的长时间运行”
var object = unfinishedTaskQuery.getFirstObject()
如果有人知道我怎么可能在没有长时间运行警告的情况下实现这一目标仍然可以理解。