Вы можете создать подкласс ваши UIAlertController
с, прикрепить NSNotification
наблюдателей к каждому, которые бы вызвать метод в UIAlertController
подклассу отклонить оповещения контроллера, а затем опубликовать NSNotification
всякий раз, когда вы будете готовы уволить, например:
class ViewController: UIViewController {
func presentAlert() {
// Create alert using AlertController subclass
let alert = AlertController(title: nil, message: "Message.", preferredStyle: UIAlertControllerStyle.Alert)
// Add observer to the alert
NSNotificationCenter.defaultCenter().addObserver(alert, selector: Selector("hideAlertController"), name: "DismissAllAlertsNotification", object: nil)
// Present the alert
self.presentViewController(alert, animated: true, completion:nil)
}
}
// AlertController subclass with method to dismiss alert controller
class AlertController: UIAlertController {
func hideAlertController() {
self.dismissViewControllerAnimated(true, completion: nil)
}
}
Затем опубликовать уведомление каждый раз, когда вы будете готовы закрыть предупреждение (в данном случае, при нажатии на уведомление толчок):
NSNotificationCenter.defaultCenter().postNotificationName("DismissAllAlertsNotification", object: nil)
Что вы имеете в виду _все_ UIAlertControllers? Все UIAlertControllers представлены? – Cesare
@CeceXX Любой представленный UIAlertController. Отредактировано название и текст, чтобы указать – David
. Итак, вы хотите не представлять UIAlertController или хотите уволить тех, кто представлен? – Cesare