我打開編輯表中FirstViewController如何酥料餅
@IBAction func editButtonPressed(sender: UIBarButtonItem) {
self.tableView.allowsMultipleSelectionDuringEditing = true
if self.editing {
let popoverEditMenu = self.storyboard?.instantiateViewControllerWithIdentifier("popoverEditMenu") as! EditMenuTableViewController
popoverEditMenu.modalPresentationStyle = .Popover
popoverEditMenu.popoverPresentationController!.delegate = self
let popover: UIPopoverPresentationController = popoverEditMenu.popoverPresentationController!
popover.barButtonItem = sender
presentViewController(popoverEditMenu, animated: true, completion: nil)
} else {
editButton.image = UIImage(named: "profile_more")
self.editing = !self.editing
}
}
編輯表被成功列入禁用編輯的UITableViewController。上述行動後,我要完成編輯,通過單擊表格單元格在一個酥料餅,代碼:
override func tableView(tableView: UITableView, didSelectRowAtIndexPath indexPath: NSIndexPath) {
let firstTableVC = self.storyboard?.instantiateViewControllerWithIdentifier("firstTableVC") as! FirstTableViewController
tableView.deselectRowAtIndexPath(indexPath, animated: true)
switch indexPath.row {
case 0:
self.dismissViewControllerAnimated(true, completion: nil)
firstTableVC.editing = false // Disable Editing
firstTableVC.editButton.image = UIImage(named: "1461294921_15.Pencil")
default:
break
}
}
但有按鈕圖像中沒有變化,表格編輯模式未被禁用
指定一個委託繼承的問題是,你正在創建FirstTableViewController,這是從該酥料餅呈現原始實例完全獨立的一個完全新的實例。有幾種方法可以實現你想要的,但在這種情況下,我會推薦一個委託/協議模式。請參閱[本答案](http://stackoverflow.com/a/31934786)中的「將數據傳回給以前的視圖控制器」。你還應該記住@阿列克謝的答案,這也很重要。 – pbasdf
@pbasdf謝謝:) –