PFQueryTableViewController,异步和同步加载查询Parse swift

时间:2015-04-10 21:04:18

标签: ios swift parse-platform pfquery

目前正在开发一种在表加载之前加载查询的方法,目前数组在页面加载之前不会保留任何内容。上一页的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
}

1 个答案:

答案 0 :(得分:1)

认为这是一个简单的修复,虽然这确实会导致“主线程上的长时间运行”

 var object = unfinishedTaskQuery.getFirstObject()

如果有人知道我怎么可能在没有长时间运行警告的情况下实现这一目标仍然可以理解。