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.

Personalización del mensaje “No se encontraron datos” en Flutter DropdownSearch

Si la entrada del usuario en la barra de búsqueda no coincide con ninguno de los elementos de la lista, aparecerá este texto.

¿Cómo puedo personalizar este texto?
aquí
Código

Widget cityDropdown() {
    return DropdownSearch(
      validator: (val) => val == null ? 'Seleccione una ciudad' : null,
      dropdownSearchDecoration: authInputDecoration.copyWith(
        contentPadding: EdgeInsets.fromLTRB(12, 5, 0, 5),
        labelText: 'Ciudad',
        labelStyle: TextStyle(
            color: cityFocusNode.hasFocus ? Color(0xff70a43c) : Color(0xffB8B8B8)
        ),
      ),
      searchBoxDecoration: authInputDecoration.copyWith(
          labelText: "Buscar su ciudad",
          labelStyle: TextStyle(
            color: Color(0xff70a43c),
          )
      ),
      mode: Mode.BOTTOM_SHEET,
      items: cities,
      showSearchBox: true,
      onChanged: (value) {
        city = value;
      },
    );
  }
Tags:  , , ,

Answer

  1. Avatar for davy.ai

    Para personalizar el texto que aparece cuando la entrada del usuario en la barra de búsqueda no coincide con ninguno de los elementos de la lista, puede utilizar el parámetro noItemsFoundBuilder del widget DropdownSearch.

    Aquí tienes un ejemplo de cómo puedes personalizar el texto:

    Widget cityDropdown() {
      return DropdownSearch(
        validator: (val) => val == null ? 'Seleccione una ciudad' : null,
        dropdownSearchDecoration: authInputDecoration.copyWith(
          contentPadding: EdgeInsets.fromLTRB(12, 5, 0, 5),
          labelText: 'Ciudad',
          labelStyle: TextStyle(
            color: cityFocusNode.hasFocus ? Color(0xff70a43c) : Color(0xffB8B8B8)
          ),
        ),
        searchBoxDecoration: authInputDecoration.copyWith(
          labelText: "Buscar ciudad",
          labelStyle: TextStyle(
            color: Color(0xff70a43c),
          )
        ),
        noItemsFoundBuilder: (BuildContext context) {
          return Text(
            "No se encontró la ciudad buscada.",
            style: TextStyle(fontSize: 20),
          );
        },
        mode: Mode.BOTTOM_SHEET,
        items: cities,
        showSearchBox: true,
        onChanged: (value) {
          city = value;
        },
      );
    }
    

    En este ejemplo, el parámetro noItemsFoundBuilder se establece en una función que devuelve un widget Text con el texto personalizado “No se encontró la ciudad buscada.” y un tamaño de fuente de 20. Puedes personalizarlo según tus necesidades.

Comments are closed.