Я пытаюсь реализовать вложенные обработчики завершения, но по какой-то причине мой второй обработчик не запускается после завершения.Вот как выглядит код:
//User presses a button on a cell. Code is in `cellForRowAtIndex...`
cell.callback = {
print("in CFRAIP")
self.showPopUpDialog(completionHandler: { () -> Void in
print("AfterPOPUPDIALOG")
self.requestBookingWithCompletionHandler(fetchBookingForDate: self.currentDate, row: indexPath.row)
})
}
func showPopUpDialog(completionHandler: () -> Void ){
print("In show PopUPdialog")
let alertController = UIAlertController(title: "Uppgifter", message: "Skriv in namn och telefonnummer", preferredStyle: .alert)
let confirmAction = UIAlertAction(title: "Boka", style: .default) { (_) in
//getting the input values from user
self.bokadNamn = (alertController.textFields?[0].text)!
self.bokadTelefon = (alertController.textFields?[1].text)!
print("pressed ok in popup")
}
let cancelAction = UIAlertAction(title: "Avbryt", style: .cancel) { (_) in}
//adding textfields to our dialog box
alertController.addTextField { (textField) in
textField.placeholder = "Namn"
textField.layer.cornerRadius = 5
}
alertController.addTextField { (textField) in
textField.placeholder = "Telefonnummer"
}
alertController.addAction(confirmAction)
alertController.addAction(cancelAction)
//finally presenting the dialog box
self.present(alertController, animated: true, completion: nil)
}
Это распечатки, которые я получаю:
in CFRAIP
In show PopUPdialog
pressed ok in popup
print("AfterPOPUPDIALOG")
не запускается, и мой сетевой запрос не выполняется послепользователь нажал ok в PopUP
.Я чувствую, что это что-то действительно простое, что мне не хватает, но, к сожалению, я слеп, чтобы увидеть это ...