Saludos, Implementé este código para cambiar el estado de cada boton: <code>import 'package:flutter/material.dart'; class FloatingAction...

Pregunta de la clase:
Widget Floating Action Button
Luis Enrique Carreño Herreño

Luis Enrique Carreño Herreño

Pregunta
studenthace 6 años

Saludos,

Implementé este código para cambiar el estado de cada boton:

import 'package:flutter/material.dart'; class FloatingActionButtonGreen extends StatefulWidget { @override State<StatefulWidget> createState() { return _FloatingActionButtonGreen(); } } class _FloatingActionButtonGreen extends State<FloatingActionButtonGreen> { bool _status = false; void onPressedFav() { setState(() { _status = !_status; }); Scaffold.of(context).showSnackBar( SnackBar( content: Text( _status ? 'Agregado a tus favoritos' : 'Retirado de sus favoritos', style: TextStyle( fontFamily: 'IBM Plex Sans', fontStyle: FontStyle.italic, ), ), ), ); } @override Widget build(BuildContext context) { return FloatingActionButton( backgroundColor: Color(0xFF11DA53), mini: true, tooltip: 'Fav', child: _status ? Icon(Icons.favorite) : Icon(Icons.favorite_border), onPressed: onPressedFav, ); } }

Y al parecer funciona bien, pero cuando selecciono o marco como favoritos, dos o más y me desplazo a los extremos de la lista de imágenes, el floating button pierde su estado y vuelve a dibujar el icono de favorite_border. ¿Qué puede estar pasando?

1 respuestas
para escribir tu comentario
    Fredy Red Ramos Pomari

    Fredy Red Ramos Pomari

    studenthace 5 años

    No estoy seguro, pero puede que el widget padre al ser redibujado cuando haces scroll y eso causa que se ejecute su metodo build nuevamente, causando que todo vuelva a 0.

Curso de Flutter

Curso de Flutter

Flutter es el framework de Google para desarrollar interfaces móviles nativas en iOS y Android, basado en los principios de Material Design y Cupertino (iOS) tendrás un look and feel totalmente natural en tus aplicaciones. Desarrolla aplicaciones móviles nativas de alta calidad y mucho más rápido usando Flutter.

Curso de Flutter
Curso de Flutter

Curso de Flutter

Flutter es el framework de Google para desarrollar interfaces móviles nativas en iOS y Android, basado en los principios de Material Design y Cupertino (iOS) tendrás un look and feel totalmente natural en tus aplicaciones. Desarrolla aplicaciones móviles nativas de alta calidad y mucho más rápido usando Flutter.