【发布时间】:2016-05-27 09:31:31
【问题描述】:
我有两个视图控制器,一个是 ScheduleController,另一个是 EditShiftController。在 ScheduleController 我有一个表视图名称是 scheduleTable。在 scheduleTable 我有一个带有 identifier ScheduleWithData 的单元格。在这个单元格中,我有两个不同的按钮按钮 EDIT 和按钮 DELETE。我直接将按钮 EDIT 与 EditShiftController 与 segue identifier editShiftSegue 连接起来。
TableViewCell.swift
的代码var editShiftClick: (() -> Void)? = nil
@IBAction func editShiftBtn(sender: AnyObject) {
if let onButtonTapped = self.editShiftClick {
onButtonTapped()
}
}
ScheduleController.swift
的代码myCell!.editShiftClick = {
self.performSegueWithIdentifier("editShiftSegue", sender: dataTemp[indexPath.row].id)
}
ScheduleController.swift
中prepareSegue的函数override func prepareForSegue(segue: UIStoryboardSegue, sender: AnyObject!) {
if (segue.identifier == "editShiftSegue") {
print("senderIndexPath=\(sender)")
if (sender != nil) {
let svc = segue.destinationViewController as! EditShiftViewController;
svc.label = String(sender)
}
}
}
Segue 的截图 enter image description here
当我点击 EDIT 按钮然后 EditShiftController 接到两次电话我不知道为什么 请,任何人都可以在这里帮助我,谢谢你提前
【问题讨论】:
-
TableViewCell.swift中的onButtonTaped()方法是什么? -
@Anthony Roani 这是在表格视图单元格中使用按钮单击事件的方式谢谢
-
这个方法你在做什么?
-
@AnthonyRoani 这是 swift 的默认功能,当您单击按钮时会触发该功能
标签: ios swift uitableview segue