Dialogo con transiciones en flutter

Usar este paquete como biblioteca

Ejecute este comando:

Con Flutter:

$ flutter pub add dialog_alert_transition

Esto agregará una línea como esta al pubspec.yaml de su paquete (y ejecutará un implícito):

flutter pub get

dependencies:
  dialog_alert_transition: ^2.0.0

Como alternativa, el editor podría admitir archivos. Consulta la documentación de tu editor para obtener más información. flutter pub get

Importarlo

Ahora, en tu código Dart, puedes usar:

'package:dialog_alert_transition/dialog_alert_transition.dart';

dialog_alert_transition es una librería que es para usar dialogo y notificación con efectos de transición.

esta entrada está usando la version 2.0.0 y para futuro quizás cambie y mejore deberán consultar la biblioteca de Dart en su página pub.dev

Como sabemos existen muchos plugin de dialogo, pero este es un plugin creado por mi para la comunidad. es libre para su uso general.

Características 

Abrir el dialogo con distintas transiciones tales como:

  • FadeIn,
  • FadeInDown,
  • FadeInDownBig,
  • FadeInUp,
  • FadeInUpBig,
  • FadeInLeft,
  • FadeInLeftBig,
  • FadeInRight,
  • FadeInRightBig,
  • BounceInDown,
  • BounceInUp,
  • BounceInLeft,
  • BounceInRight,
  • ElasticIn,
  • ElasticInDown,
  • ElasticInUp,
  • ElasticInLeft,
  • ElasticInRight,
  • SlideInDown,
  • SlideInUp,
  • SlideInLeft,
  • SlideInRight,
  • FlipInX,
  • FlipInY,
  • ZoomIn,
  • JelloIn,
  • Bounce,
  • Dance,
  • Flash,
  • Pulse,
  • Roulette,
  • ShakeX,
  • ShakeY,
  • Spin,
  • SpinPerfect,

Usar un controlador de dialogo:

El controlador de dialogo esta guardado en la variable pública. controlDialogGO

Ejemplo

 dialogAlertTransion(
                      context: context,
                      title: const Text('Flutter OutlinedButton Example'),
                      transitionType: transitionType.Bounce,
                      content: const Column(
                        children: [
                          Text(
                              'FloatingActionButton (FAB) is a property of Scaffold(). In the above example, we’ve displayed a FloatingActionButton, also we’ve modified the style of that buttons such as color and position of the FAB. The output looks like this'),
                        ],
                      ),
                      );

multi dialogo:

Para enviar un cuadro de diálogo personalizado, debe crear un token y hacer referencia al controlador de diálogo con el nombre de variable controlAlertGo y así poder cerrar el cuadro de diálogo

ejemplo:


//Muy importante generar 
int token = controlAlertGo.generate(); 
   dialogAlertTransion(
                      context: context,
                      title: const Text('Flutter OutlinedButton Example'),
                      content: Column(
                        children: [
                          const Text(
                              'FloatingActionButton (FAB) is a property of Scaffold(). In the above example, we’ve displayed a FloatingActionButton, also we’ve modified the style of that buttons such as color and position of the FAB. The output looks like this'),
                          ElevatedButton(
                            onPressed: () {
                              int token = controlAlertGo.generate();
                              dialogAlertTransion(
                                context: context,
                                title: const Text(
                                    'Flutter OutlinedButton Example'),
                                content: Column(
                                  children: [
                                    const Text(
                                        'FloatingActionButton (FAB) is a property of Scaffold(). In the above example, we’ve displayed a FloatingActionButton, also we’ve modified the style of that buttons such as color and position of the FAB. The output looks like this'),
                                    ElevatedButton(
                                      onPressed: () {
                                        controlAlertGo.close(
                                            token: token, context: context);
                                      },
                                      child: const Text('back'),
                                    ),
                                  ],
                                ),
                                alignment: Alignment.topCenter,
                                blur: true,
                                transitionType: transitionType.ElasticIn,
                                duration: 1000,
                                backgroundColor: Colors.black,
                                token: token,
                                closeFunc: () {
                                  setState(() {
                                    stas = 'New  String';
                                  });
                                },
                              );
                            },
                            child: const Text('new Alert'),
                          ),
                        ],
                      ),
                      alignment: Alignment.topCenter,
                      blur: true,
                      duration: 1000,
                      backgroundColor: Colors.black,
                      transitionType: e,
                      closeFunc: () {
                        setState(() {
                          stas = 'New string';
                        });
                      });

Posición:

Cambie la posición del cuadro de diálogo con las posiciones derecha, izquierda, de abajo hacia arriba de forma predeterminada tiene el valor de 0.

ejemplo:

dialogAlertTransion(
                      top: 15,
                      left: 25,
                      bottom: 25,
                      rigth: 50,
                      context: context,
                      title: const Text('Flutter OutlinedButton Example'),s
                      content: const Column(
                        children: [
                          Text(
                              'FloatingActionButton (FAB) is a property of Scaffold(). In the above example, we’ve displayed a FloatingActionButton, also we’ve modified the style of that buttons such as color and position of the FAB. The output looks like this'),
                        ],
                      ),);

Cuadro de diálogo personalizado:

Para acostumbrarse a su diálogo, debe pasar un token generado y así poder manipular el controlador de diálogo a su manera

ejemplo:

TextButton(
                onPressed: () {
                  int tk = controlDialogGO.generate();
                  dialogAlertTransion(
                    transitionType: e,
                    token: tk,
                    context: context,
                    designer: true,
                    alertWd: customWidget(token: tk),
                  );
                },
                child: Text(e.name),

Desenfoque o efecto blur:

Habilitar es un valor true o false.

ejemplo:

dialogAlertTransion(
                      blur: true ||false,...);

Para ver el ejemplo completo:

import 'package:dialog_alert_transition/dialog_alert_transition.dart';
import 'package:flutter/material.dart';

class singleAlert extends StatefulWidget {
  const singleAlert({super.key});

  @override
  State<singleAlert> createState() => _multiAlert();
}

class _multiAlert extends State<singleAlert> {
  String stas = 'text old';

  @override
  Widget build(BuildContext context) {
    return Scaffold(
      appBar: AppBar(
        title: const Text('Single dialog'),
      ),
      body: Center(
        child: ListView(
          children: [
            for (transitionType e in transitionType.values) ...[
              TextButton(
                onPressed: () {
                  int token = controlAlertGo.generate();
                  dialogAlertTransion(
                      context: context,
                      title: const Text('Flutter OutlinedButton Example'),
                      content: const Column(
                        children: [
                          Text(
                              'FloatingActionButton (FAB) is a property of Scaffold(). In the above example, we’ve displayed a FloatingActionButton, also we’ve modified the style of that buttons such as color and position of the FAB. The output looks like this'),
                        ],
                      ),
                      alignment: Alignment.topCenter,
                      blur: true,
                      duration: 1000,
                      backgroundColor: Colors.black,
                      transitionType: e,
                      token: token,
                      rejectString: 'Close alert',
                      acceptString: 'Confirm this alert',
                      rejectFunc: () {
                        print('this function use is reject alert');
                      },
                      acceptFunc: () {
                        print('this function use in accept alert');
                      },
                      closeFunc: () {
                        setState(() {
                          stas = 'new string';
                        });
                      });
                },
                child: Text(e.name),
              ),
            ]
          ],
        ),
      ),
    );
  }
}

Comparte:

Facebook
Twitter
Pinterest
LinkedIn

Agregar un comentario

Tu dirección de correo electrónico no será publicada. Los campos requeridos están marcados *

Quizás te interese

Entradas relacionados

flutter_animation_transition_package

Relacionado

flutter
v0
acertoDePavelDurov
fluttter 2024

Random de entradas

Pavel Durov
Quiero leer
hover_float_animation
Quiero leer
flutter_animation_transition_package
Quiero leer
Andariel
Quiero leer

Tienda de apps

  • Google Play

  • Windows Apps

  • App Store

widget flotante en Flutter con hover_float_animation

Libreria flutter para crear un widget flotante con relación del widget padre. Descripción de hover_float_animation…

Transiciones para Flutter

Descripción del paquete Transition_Animation para Flutter Transiciones con animaciones para pasar de una pagina a…

El futuro de la IA

Es normal ponernos a pensar cual sera el futuro de la IA ahora que casi…

Suscribirme a los boletines

Se le agradece de antemano por darse la molestia de usar nuestra web. Para ser parte de nuestro servicio de suscripción no pedimos ninguna clase de pago. pero tenemos términos y condiciones de su uso. y el respeto por nuestras políticas de IloveSoft

Por favor tómese el tiempo para poder leer: “Términos y Condiciones” y “Políticas de Privacidad