Après un calcul, je souhaite afficher une fenêtre contextuelle ou une boîte d'alerte transmettant un message à l'utilisateur. Quelqu'un sait-il où je peux trouver plus d'informations à ce sujet?
303
Oui, UIAlertView
c'est probablement ce que vous cherchez. Voici un exemple:
UIAlertView *alert = [[UIAlertView alloc] initWithTitle:@"No network connection"
message:@"You must be connected to the internet to use this app."
delegate:nil
cancelButtonTitle:@"OK"
otherButtonTitles:nil];
[alert show];
[alert release];
Si vous voulez faire quelque chose de plus sophistiqué, par exemple afficher une interface utilisateur personnalisée dans votre UIAlertView
, vous pouvez sous UIAlertView
- classer et insérer des composants d'interface utilisateur personnalisés dans la init
méthode. Si vous souhaitez répondre à une pression de bouton après l' UIAlertView
apparition d' un , vous pouvez définir ce qui delegate
précède et appliquer la - (void)alertView:(UIAlertView *)alertView clickedButtonAtIndex:(NSInteger)buttonIndex
méthode.
Vous pouvez également consulter le UIActionSheet
.
Différentes personnes qui viennent à cette question signifient différentes choses par une boîte contextuelle. Je recommande fortement de lire la documentation des vues temporaires . Ma réponse est en grande partie un résumé de cela et d'autres documents connexes.
Alerte (montrez-moi un exemple)
Les alertes affichent un titre et un message facultatif. L'utilisateur doit l'acquitter (une alerte à un bouton) ou faire un choix simple (une alerte à deux boutons) avant de continuer. Vous créez une alerte avec un
UIAlertController
.Il convient de citer l'avertissement et les conseils de la documentation sur la création d'alertes inutiles.
Remarques:
UIAlertView
était obsolète. Vous devez utiliserUIAlertController
pour créer des alertes maintenant.Fiche d'action (montrez-moi un exemple)
Les fiches d'action donnent à l'utilisateur une liste de choix. Ils apparaissent soit en bas de l'écran, soit dans un popover en fonction de la taille et de l'orientation de l'appareil. Comme pour les alertes, a
UIAlertController
est utilisé pour créer une feuille d'action. Avant iOS 8,UIActionSheet
était utilisé, mais maintenant la documentation dit:Vue modale (montrez-moi un exemple)
Une vue modale est une vue autonome qui possède tout ce dont elle a besoin pour effectuer une tâche. Il peut ou non occuper le plein écran. Pour créer une vue modale, utilisez un
UIPresentationController
avec l'un des styles de présentation modale .Voir également
Popover (montrez-moi un exemple)
Un Popover est une vue qui apparaît lorsqu'un utilisateur tape sur quelque chose et disparaît en le tapotant. Il a une flèche indiquant le contrôle ou l'emplacement d'où le robinet a été effectué. Le contenu peut être à peu près tout ce que vous pouvez mettre dans un View Controller. Vous faites un popover avec un
UIPopoverPresentationController
. (Avant iOS 8,UIPopoverController
était la méthode recommandée.)Dans le passé, les popovers n'étaient disponibles que sur l'iPad, mais à partir d'iOS 8, vous pouvez également les obtenir sur un iPhone (voir ici , ici et ici ).
Voir également
Notifications
Les notifications sont des sons / vibrations, des alertes / bannières ou des badges qui informent l'utilisateur de quelque chose même lorsque l'application n'est pas en cours d'exécution au premier plan.
Voir également
Une note sur les toasts Android
Sous Android, un Toast est un court message qui s'affiche à l'écran pendant une courte période, puis disparaît automatiquement sans perturber l'interaction de l'utilisateur avec l'application.
Les personnes venant d'un arrière-plan Android veulent savoir ce qu'est la version iOS d'un Toast. On peut trouver quelques exemples de ces questions ici , ici , ici et ici . La réponse est qu'il n'y a pas d'équivalent à un Toast dans iOS . Diverses solutions de contournement qui ont été présentées comprennent:
UIView
Cependant, mon conseil est de s'en tenir aux options d'interface utilisateur standard qui viennent déjà avec iOS. N'essayez pas de donner à votre application une apparence et un comportement identiques à ceux de la version Android. Pensez à la façon de la reconditionner pour qu'elle ressemble à une application iOS.
la source
Depuis la sortie d'iOS 8,
UIAlertView
est désormais obsolète; UIAlertController est le remplaçant.Voici un exemple de son apparence dans Swift:
Comme vous pouvez le voir, l'API nous permet d'implémenter des rappels pour l'action et lorsque nous présentons l'alerte, ce qui est assez pratique!
Mis à jour pour Swift 4.2
la source
Mis à jour pour iOS 8.0
Depuis iOS 8.0, vous devrez utiliser UIAlertController comme suit:
Où self dans mon exemple est un UIViewController, qui implémente la méthode "presentViewController" pour un popup.
David
la source
Pour Swift 3 et Swift 4:
UIAlertView étant obsolète, il existe un bon moyen d'afficher Alert sur Swift 3
Obsolète:
Voici la version rapide inspirée de la réponse vérifiée:
Afficher AlertView:
Ajoutez le délégué à votre contrôleur de vue:
Lorsque l'utilisateur clique sur le bouton, ce code sera exécuté:
la source
Bien que j'aie déjà écrit un aperçu de différents types de fenêtres contextuelles, la plupart des gens ont juste besoin d'une alerte.
Comment implémenter une boîte de dialogue contextuelle
Ma réponse plus complète est ici .
la source
Voici la version C # dans Xamarin.iOS
la source