2026-07-05 errorsflutterdart Solución: Cannot provide both a color and a decoration en un Container de Flutter Mueve el color dentro de la decoración: usa decoration: BoxDecoration(color: ...) en lugar de pasar color y decoration al mismo Container.
2026-07-05 errorsflutterdart Solución: Incorrect use of ParentDataWidget. Expanded widgets must be placed inside Flex widgets (Flutter) Este error significa que un Expanded o Flexible no es hijo directo de un Row, Column o Flex. Muévelo directamente bajo el widget flex, o quita Expanded si el padre no es un flex.
2026-07-05 errorsflutterdart Solución: A RenderViewport expected a child of type RenderSliver but received a child of type RenderBox (Flutter CustomScrollView) La lista slivers de un CustomScrollView solo acepta slivers. Envuelve los widgets de tipo caja en SliverToBoxAdapter, o cambia ListView/Padding/Column por SliverList y SliverPadding.
2026-07-04 flutterdartriverpod Cómo comprobar Ref.mounted después de un hueco asíncrono en Flutter Riverpod 3 En un Notifier, resuelve las dependencias antes del await y luego protege la escritura de state con if (!ref.mounted) return. Es el reemplazo en Riverpod 3.0 del viejo mixin con onDispose, y evita UnmountedRefException cuando un provider se descarta a mitad de un await. Probado en flutter_riverpod 3.x, Flutter 3.44, Dart 3.x.
2026-07-02 flutterdartlayout Cómo combinar un ListView y un GridView en una sola vista de scroll con slivers en Flutter Coloca una lista y una cuadrícula en un solo scroll continuo sin scrollables anidados. Usa CustomScrollView con SliverList y SliverGrid, y evita la trampa de shrinkWrap que arruina el rendimiento en silencio.
2026-07-02 flutterdartlayout Cómo anidar un ListView dentro de un Column en Flutter sin el error de altura sin límites Por qué un ListView dentro de un Column lanza 'Vertical viewport was given unbounded height', y las cuatro soluciones (Expanded, Flexible, shrinkWrap, SizedBox) con los compromisos de rendimiento que deciden cuál quieres.
2026-06-24 errorsflutterdart Solución: LateInitializationError: Field '...' has not been initialized en Flutter Este crash significa que leíste un campo late antes de que algo le asignara un valor. Inicialízalo de forma síncrona en initState, o deja de usar late y modela el valor asíncrono como estado anulable.
2026-06-24 errorsflutterdart Solución: Null check operator used on a null value en Flutter El operador ! encontró un null en runtime. Reemplazalo por ?. y ?? para un valor por defecto, o protegelo con una comprobación de null explícita, en lugar de afirmar un valor que no estaba.
2026-06-22 flutterdartgo-router Cómo configurar rutas anidadas y deep links con go_router en Flutter Construye un shell persistente con rutas anidadas usando ShellRoute y StatefulShellRoute, y luego configura deep links basados en rutas que reconstruyen toda la pila de páginas. Configuración completa para Android e iOS, más los problemas que rompen la pila de retroceso.
2026-06-22 flutterdartasync Cómo usar BuildContext de forma segura después de un await en Flutter Captura lo que necesitas del context antes del await y luego protege la reanudación con if (context.mounted) return. Aquí tienes el patrón completo, la regla del linter que lo exige y los casos límite que no detecta.