Después de un cálculo, quiero mostrar una ventana emergente o un cuadro de alerta que transmite un mensaje al usuario. ¿Alguien sabe dónde puedo encontrar más información sobre esto?
303
Sí, a UIAlertView
es probablemente lo que estás buscando. Aquí hay un ejemplo:
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 desea hacer algo más elegante, digamos que muestre una IU personalizada en su UIAlertView
, puede subclasificar UIAlertView
y colocar componentes de IU personalizados en el init
método. Si desea responder a una pulsación de botón después de que UIAlertView
aparezca un , puede configurar lo delegate
anterior e implementar el - (void)alertView:(UIAlertView *)alertView clickedButtonAtIndex:(NSInteger)buttonIndex
método.
También es posible que desee ver el UIActionSheet
.
Diferentes personas que vienen a esta pregunta quieren decir cosas diferentes por un cuadro emergente. Recomiendo leer la documentación de Vistas temporales . Mi respuesta es en gran medida un resumen de esta y otra documentación relacionada.
Alerta (muéstrame un ejemplo)
Las alertas muestran un título y un mensaje opcional. El usuario debe reconocerlo (una alerta de un botón) o hacer una elección simple (una alerta de dos botones) antes de continuar. Crea una alerta con un
UIAlertController
.Vale la pena citar las advertencias y consejos de la documentación sobre la creación de alertas innecesarias.
Notas:
UIAlertView
quedó en desuso. Debe usarUIAlertController
para crear alertas ahora.Hoja de acción (muéstrame un ejemplo)
Las hojas de acción le dan al usuario una lista de opciones. Aparecen en la parte inferior de la pantalla o en una ventana emergente, dependiendo del tamaño y la orientación del dispositivo. Al igual que con las alertas, a
UIAlertController
se usa para hacer una hoja de acción. AntesUIActionSheet
se usaba iOS 8, pero ahora la documentación dice:Vista modal (muéstrame un ejemplo)
Una vista modal es una vista autónoma que tiene todo lo que necesita para completar una tarea. Puede o no ocupar la pantalla completa. Para crear una vista modal, use a
UIPresentationController
con uno de los estilos de presentación modal .Ver también
Popover (muéstrame un ejemplo)
Un Popover es una vista que aparece cuando un usuario toca algo y desaparece cuando lo toca. Tiene una flecha que muestra el control o la ubicación desde donde se realizó el toque. El contenido puede ser casi cualquier cosa que pueda poner en un controlador de vista. Haces un popover con a
UIPopoverPresentationController
. (Antes de iOS 8,UIPopoverController
era el método recomendado).En el pasado, los popovers solo estaban disponibles en el iPad, pero a partir de iOS 8 también puedes obtenerlos en un iPhone (mira aquí , aquí y aquí ).
Ver también
Notificaciones
Las notificaciones son sonidos / vibraciones, alertas / pancartas o distintivos que notifican al usuario de algo, incluso cuando la aplicación no se está ejecutando en primer plano.
Ver también
Una nota sobre las tostadas de Android
En Android, un Toast es un mensaje corto que se muestra en la pantalla durante un corto período de tiempo y luego desaparece automáticamente sin interrumpir la interacción del usuario con la aplicación.
Las personas que provienen de un fondo Android quieren saber cuál es la versión iOS de un Toast. Puede encontrar algunos ejemplos de estas preguntas aquí , aquí , aquí y aquí . La respuesta es que no hay equivalente a un Toast en iOS . Varias soluciones alternativas que se han presentado incluyen:
UIView
Sin embargo, mi consejo es seguir con las opciones de interfaz de usuario estándar que ya vienen con iOS. No intentes hacer que tu aplicación se vea y se comporte exactamente igual que la versión de Android. Piense en cómo volver a empaquetarlo para que se vea y se sienta como una aplicación de iOS.
fuente
Desde el lanzamiento de iOS 8,
UIAlertView
ahora está en desuso; UIAlertController es el reemplazo.Aquí hay una muestra de cómo se ve en Swift:
Como puede ver, la API nos permite implementar devoluciones de llamada tanto para la acción como cuando presentamos la alerta, ¡lo cual es bastante útil!
Actualizado para Swift 4.2
fuente
Actualizado para iOS 8.0
Desde iOS 8.0, deberá usar UIAlertController de la siguiente manera:
Donde self en mi ejemplo es un UIViewController, que implementa el método "presentViewController" para una ventana emergente.
David
fuente
Para Swift 3 y Swift 4:
Como UIAlertView está en desuso, existe una buena manera de mostrar Alert en Swift 3
Obsoleto :
Esta es la versión rápida inspirada en la respuesta comprobada:
Mostrar AlertView:
Agregue el delegado a su controlador de vista:
Cuando el usuario haga clic en el botón, se ejecutará este código:
fuente
Aunque ya escribí una descripción general de los diferentes tipos de ventanas emergentes, la mayoría de las personas solo necesitan una Alerta.
Cómo implementar un cuadro de diálogo emergente
Mi respuesta más completa está aquí .
fuente
Aquí está la versión de C # en Xamarin.iOS
fuente