es.davy.ai

Preguntas y respuestas de programación confiables

¿Tienes una pregunta?

Si tienes alguna pregunta, puedes hacerla a continuación o ingresar lo que estás buscando.

Cómo implementar una lista desplegable en Flutter

Buen día. Soy un principiante en flutter y esto es lo que intento lograr.

Estoy creando un formulario donde los usuarios pueden editar los detalles de su cuenta bancaria. El nombre de la cuenta es un campo de texto, el número de cuenta es un campo de texto y quiero que el nombre del banco sea un menú desplegable porque estoy utilizando un sistema de pagos masivos, por lo que el nombre del banco debe coincidir con el slug o de lo contrario aparecerá como inválido en mi procesador de pagos.

Este es el código para el formulario si todos los campos son solo campos de texto..

CustomTextFormField(
labelText:”Nombre del Banco”,
keyboardType:TextInputType.multiline,
textEditingController: vm.instructionsTEC,
).py12(),

Intenté reemplazarlo con esto

DropdownButton(
items: [‘abbey-mortgage-bank’,
‘above-only-mfb’,
‘access-bank’,
‘access-bank-diamond’,
‘alat-by-wema’,
‘amju-unique-mfb’,
‘asosavings’,
‘bainescredit-mfb’,
‘bowen-microfinance-bank’,
‘carbon’,
‘cemcs-microfinance-bank’,
‘citibank-nigeria’,
‘coronation-merchant-bank’,
‘ecobank-nigeria’,
‘ekondo-microfinance-bank’,
‘eyowo’,
‘fidelity-bank’,
‘firmus-mfb’,
‘first-bank-of-nigeria’,
‘first-city-monument-bank’,
‘fsdh-merchant-bank-limited’,
‘globus-bank’,
‘gomoney’,
‘guaranty-trust-bank’,
‘hackman-microfinance-bank’,
‘hasal-microfinance-bank’,
‘heritage-bank’,
‘ibile-mfb’,
‘infinity-mfb’,
‘jaiz-bank’,
‘kadpoly-mfb’,
‘keystone-bank’,
‘kredi-money-mfb’,
‘kuda-bank’,
‘lbic-plc’,
‘links-mfb’,
‘mayfair-mfb’,
‘mint-mfb’,
‘paga’,
‘palmpay’,
‘parallex-bank’,
‘parkway-ready-cash’,
‘paycom’,
‘petra-microfinance-bank-plc’,
‘polaris-bank’,
‘providus-bank’,
‘quickfund-mfb’,
‘rand-merchant-bank’,
‘rubies-mfb’,
‘sparkle-microfinance-bank’,
‘stanbic-ibtc-bank’,
‘standard-chartered-bank’,
‘sterling-bank’,
‘suntrust-bank’,
‘taj-bank’,
‘tangerine-money’,
‘tcf-mfb’,
‘titan-bank’,
‘union-bank-of-nigeria’,
‘united-bank-for-africa’,
‘unity-bank’,
‘vfd’,
‘wema-bank’,
‘zenith-bank’].map((String value) {
return DropdownMenuItem(
value: value,
child: Text(value),
);
}).toList(),
onChanged: (_) {},
).py12(),

Ejecuté el APK y solo muestra una pantalla en blanco cuando se carga esta página.

Tags:  , ,

Answer

  1. Avatar for davy.ai

    Como experto en TI especializado en Flutter y Dart, parece que el problema con su código radica en el hecho de que no está estableciendo el valor del DropdownButton.

    Así es como puede solucionarlo:

    1. Primero, defina una variable que mantendrá el nombre del banco seleccionado.
    String selectedBankName;
    
    1. Luego, en su DropdownButton, agregue el parámetro value y establézcalo en la variable selectedBankName.
    DropdownButton<string>(
      value: selectedBankName,
      items: <string>[
        'abbey-mortgage-bank',
        'above-only-mfb',
        'access-bank',
        ...
      ],
      onChanged: (String newValue) {
        setState(() {
          selectedBankName = newValue;
        });
      },
    )
    
    1. También debe actualizar su CustomTextFormField para incluir el parámetro initialValue, que establecerá el valor inicial del campo de nombre del banco en el nombre del banco seleccionado.
    CustomTextFormField(
      labelText: "Nombre del Banco".i18n,
      keyboardType: TextInputType.multiline,
      textEditingController: vm.instructionsTEC,
      initialValue: selectedBankName,
    ).py12(),
    

    Siguiendo estos pasos, debería poder hacer que el DropdownButton funcione y mostrar el nombre del banco seleccionado en el formulario. Si persiste el problema de la pantalla en blanco, puede haber otros problemas en su código que deban abordarse.

Comments are closed.