我在使用RowAction按鈕時將數據傳遞給新視圖控制器以編輯字段時出現問題。滑動到編輯細節Swift和分析
我可以得到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]
}
我可以得到數據使用正常賽格瑞用下面的代碼來傳遞:
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)
我試過你的解決方案,但是,我仍然通過零。我在底部的原始問題中添加了我的代碼以嘗試解決方案。 – Addison