【发布时间】:2015-04-15 20:05:35
【问题描述】:
在使用 RowAction 按钮时,我无法将数据传递到新的视图控制器以编辑字段。
我可以通过下面的代码让 RowAction 按钮转到新的视图控制器:
override func tableView(tableView: UITableView, editActionsForRowAtIndexPath indexPath: NSIndexPath) -> [AnyObject]? {
var editAction = UITableViewRowAction(style: UITableViewRowActionStyle.Default, title: " Edit " , handler: { (action:UITableViewRowAction!, indexPath:NSIndexPath!) -> Void in
dispatch_async(dispatch_get_main_queue()) {
self.performSegueWithIdentifier("EditDetails", sender: self)
}
})
return [editAction]
}
我可以使用下面的代码使用普通的 segue 来传递数据:
override func prepareForSegue(segue: UIStoryboardSegue, sender: AnyObject?) {
if (segue.identifier == "EditDetails") {
[segue destinationViewController].
var editView = segue.destinationViewController as! EditDetailsTableViewController
if let indexPath = self.tableView.indexPathForSelectedRow() {
let row = Int(indexPath.row)
editView.currentObject = objects[row] as? PFObject
}
}
}
但是,我似乎不能同时做这两件事。我希望用户能够单击“编辑”按钮并填充这些字段的详细信息,并且他们可以对其进行编辑。
添加建议的解决方案...但是,仍然没有通过。
var editAction = UITableViewRowAction(style: UITableViewRowActionStyle.Default, title: " Edit " , handler: { (action:UITableViewRowAction!, indexPath:NSIndexPath!) -> Void in
let objectToEdit = self.objects[indexPath.row] as! PFObject
self.performSegueWithIdentifier("EditDetails", sender: objectToEdit)
【问题讨论】:
标签: ios swift parse-platform