ACTIONSHEET en SWIFTUI en Español

Curso SwiftUI, vista ActionSheet

ActionSheet en SwiftUI 2.0 es una vista que aparece en la parte inferior de la pantalla con un title, message y diferentes opciones a escoger.

ActionSheet en código

Para usar ActionSheet en SWIFTUI necesitamos el modificador .actionSheet. Este modificador espera dos parámetros:

  • isPresented: es el primer parámetro y espera una propiedad @State de tipo Bool que ahora crearemos. Le pasaremos esta propiedad que es un booleano, y cuando en la ejecución de nuestra app cambiemos el valor de la propiedad a true, (por ejemplo al pulsar un button) el ActionSheet aparecerá. En este caso modificamos el valor de isPresented cuando el user pulsa en el Button Aceptar.
  • content: En este parámetro debemos crear nuestro ActionSheet. En este caso usamos un inicializador que espera un title, message y un array de buttons.
struct ContentView: View {
    
    @State var isPresented: Bool = false
    
    var body: some View {
        Text("Suscríbete a SwiftBeta")
            .padding()
        Button("Aceptar") {
            isPresented = true
        }
        .actionSheet(isPresented: $isPresented, content: {
            ActionSheet(title: Text("Aprende SwiftUI con SwiftBeta"),
                        message: Text("Elige la opción que quieres aprender"),
                        buttons: [.default(Text("SwiftUI"),
                                           action: {
                                            print("SwifUI")
                                           }),
                                  .default(Text("Xcode")),
                                  .destructive(Text("SwiftUI, Swift y Xcode"))])
        })
    }
}
Código de ActionSheet en SwiftUI

Es muy sencillo añadir un alert en nuestra app, sólo necesitamos usar el modificador .actionSheet y dentro de su content crear la vista ActionSheet.

Hasta aquí el post de hoy, gracias por leernos! 🤓
👉👉 SUSCRÍBETE al CANAL de youtube
Si tienes preguntas no dudes en contactar con nosotros a través de Twitter