У меня есть разматывания SEGUE от UIViewController
имени DetailViewController
к MainViewController
определяется как (в пределах MainViewController
):разматывает Segue не выполняется после того, как shouldPerformSegueWithIdentifier UIAlertController
@IBAction func deleteItemUnwind(sender: UIStoryboardSegue)
{
let sourceViewController = sender.sourceViewController
}
В DetailView, у меня есть кнопка, которая должна выполнить SEGUE подключен к выходу сцены с именем deleteItemUnwindSegue
, а в DetailViewController у меня есть значение prepareForSegue
, изменяющее значение некоторых переменных. Это прекрасно работает. Проблема заключается в том, у меня есть следующий код в DetailViewController
override func shouldPerformSegueWithIdentifier(identifier: String!, sender: AnyObject!) -> Bool {
if (identifier == "deleteItemUnwindSegue") {
let deleteItemAlert: UIAlertController = UIAlertController(title: "Delete item", message: "Are you sure you want to delete this item?", preferredStyle: .ActionSheet)
let cancelAction: UIAlertAction = UIAlertAction(title: "Cancel", style: .Cancel) { action -> Void in
return false
}
deleteItemAlert.addAction(cancelAction)
let deleteItemAction: UIAlertAction = UIAlertAction(title: "Yes", style: .Destructive) { action -> Void in
return true
}
deleteItemAlert.addAction(deleteChoreAction)
self.presentViewController(deleteItemAlert, animated: true) {
}
}
return true
}
И в то время как prepareForSegue
код работает, раскрутка сами непосредственно перейти не срабатывает, чтобы отклонить вид. Есть идеи?