我希望有人可以帮助我从一个桌面视图到另一个桌面视图。我有一个tableview从parse.com提取信息并加载tableview单元格。我想拥有它,所以当我点击其中一个单元格时,它会将我带到另一个从parse.com提取信息的tableview。
答案 0 :(得分:1)
您希望在第二个UITableViewController
中显示的数据可能取决于您在第一个中搜索的单元格,对吧?然后,您需要将数据从第一个UITableViewController
传递到第二个UITableViewController
。
如果你正在使用故事板,我建议(我认为这是最简单的方法,但我不知道它是否最好)你从第一个prepareForSegue
到另一个创建了一个segue,并且正确命名。然后使用//In your class declaration
var objects = [PFObject]()
//In your query method
query.findObjectsInBackgroundWithBlock {
(objects: [AnyObject]?, error: NSError?) -> Void in
if let results = objects as! [PFObject] {
self.objects = results }
}
将该数据提供给下一个表格。如果您只使用单个Parse查询,则只需将查询中的结果数组复制到您的类中即可。
didSelectRowAtIndexPath
在performSegueWithIdentifier("mySegue", sender: self)
prepareForSegue
并实施 override func prepareForSegue(segue: UIStoryboardSegue, sender: AnyObject?) {
//Check that the segue is the right one
if segue.identifier == "mySegue" {
if let destination = segue.destinationViewController as? MySecondTableViewController {
//Grab the data from your array
if let indexPath = tableView.indexPathForSelectedRow()?.row {
if let objectToPass = objects[indexPath] as? PFObject {
//Assuming your destination VC has a variable named object, type PFObject?
destination.object = objectToPass
}
}
}
}
}
以满足您的需求。
UITableViewController
然后,在您的下一个object
中,您可以使用//Second UITableViewController
//If you're using PFTableQueryViewController, use the queryForTable method
let query = PFQuery(classname: "Animals")
query.whereKey("owner", equalTo: object) //Object comes from your first table
query.findObjectsInBackgroundWithBlock{
(...) }
为第二个表执行新查询。例如:
{{1}}
编辑:这几乎就是他们在史蒂夫发布的链接中所做的事情,但我已经做了一些希望适合你案例的例子。