Per mostrare un messaggio di alert all’utente è possibile usare la classe UIAlertController (da notare che UIAlertView è ormai considerata deprecata). UIAlertController è disponibile da iOS 8+ nel framework UIKit. Permette di configurare il controller con le azioni e lo stile desiderato e poi di mostrarlo all’utente.
Sono disponibili due stili nella enum UIAlertControllerStyle: actionSheet e alert.
La differenza è ben chiara da questa immagine, a sinistra una notifica on stile alert a destra di tipo actionSheet.
È possibile anche aggiungere dei campi di testo per permettere l’inserimento di dati all’utente, oltre a diversi pulsanti (action).
L’utilizzo della classe è molto semplice in Swift:
1 2 3 4 5 6 7 8 |
let alert = UIAlertController(title: "ALERT CONTROLLER TITLE", message: "Questa è un semplice alert di tipo alert.", preferredStyle: UIAlertControllerStyle.alert) alert.addAction(UIAlertAction(title: "OK", style: UIAlertActionStyle.default, handler: { action in print("OK") })) alert.addAction(UIAlertAction(title:"ANNULLA", style: UIAlertActionStyle.cancel, handler: { action in print("CANCEL") })) self.present(alert, animated: true, completion: nil) |
Prima di tutto istanziamo la classe indicando alcune proprietà: titolo, messaggio e stile.
Aggiungiamo delle UIAlertAction che danno all’utente la possibilità di interagire con la notifica.
Al termine della configurazione della nostra notifica, la mostriamo con il metodo present del nostro ViewController che permette di mostrare all’utente una View modale.
È possibile definire gli handler che rispondono all’azione dei “text button” della notifica.
Per ulteriori dettagli è possibile consultare la documentazione ufficiale:
https://developer.apple.com/documentation/uikit/uialertcontroller