Tengo una vista de tabla que, cuando se carga, cada celda podría devolver un NSError, que he elegido mostrar en un UIAlertController. El problema es que obtengo este error en la consola si se devuelven varios errores.
Advertencia: Intente presentar UIAlertController: 0x14e64cb00 en MessagesMasterVC: 0x14e53d800 que ya se está presentando (nulo)
Idealmente, idealmente me gustaría manejar esto en mi método de extensión UIAlertController.
class func simpleAlertWithMessage(message: String!) -> UIAlertController {
let alertController = UIAlertController(title: nil, message: message, preferredStyle: UIAlertControllerStyle.Alert)
let cancel = UIAlertAction(title: "Ok", style: .Cancel, handler: nil)
alertController.addAction(cancel)
return alertController
}
Según la respuesta de Matt, cambié la extensión a una extensión UIViewController, es mucho más limpia y ahorra mucho código presentViewController.
func showSimpleAlertWithMessage(message: String!) {
let alertController = UIAlertController(title: nil, message: message, preferredStyle: UIAlertControllerStyle.Alert)
let cancel = UIAlertAction(title: "Ok", style: .Cancel, handler: nil)
alertController.addAction(cancel)
if self.presentedViewController == nil {
self.presentViewController(alertController, animated: true, completion: nil)
}
}