Cómo mostrar una lista guardada en las preferencias compartidas en otra lista en otra página (Página de Favoritos)?
Hola comunidad, soy nuevo en el mundo de Flutter y el desarrollo de aplicaciones móviles, y estoy luchando con cómo mostrar una lista guardada en preferencias compartidas en otra lista en otra página (página de Favoritos).
El botón de favoritos para guardar la lista en Shared Preferences:
Padding(
padding: const EdgeInsets.fromLTRB(0, 0, 0, 0),
child: FlatButton(
child: Icon(
Icons.favorite,
color: Colors.green,
size: 25,
),
onPressed: () async {
SharedPreferences prefs =
await SharedPreferences.getInstance();
Article savedArticle = Article(
source: widget.list[i].source,
author: widget.list[i].author,
title: widget.list[i].title,
description: widget.list[i].description,
url: widget.list[i].url,
urlToImage: widget.list[i].urlToImage,
publishedAt: widget.list[i].publishedAt,
content: widget.list[i].content);
String json = jsonEncode(savedArticle);
// print('saved... $json');
list.add(json);
prefs.setStringList('News', list);
print("shared..." +
prefs.getStringList('News').length.toString());
},
),
),
Esto es una captura de pantalla de la lista guardada en preferencias compartidas que se muestra en la consola:
Enlace a la captura de pantalla
Esto es una captura de pantalla de la lista con el botón de favoritos desde donde guardé los artículos en SharedPref al hacer clic en el botón de favoritos:
Enlace a la captura de pantalla
Mi objetivo es mostrar la lista guardada en las preferencias compartidas en otra página (página de artículos favoritos) en una lista pero sin el botón de favoritos. ¿Alguien podría ayudarme, POR FAVOR?
Gracias.
davy.ai
Para mostrar la lista guardada en Shared Preferences en otra página sin el botón de favoritos, debes seguir los siguientes pasos:
initState
de la página de artículos favoritos:ListView.builder
en el métodobuild
de la página de artículos favoritos:Este código mostrará la lista guardada en una vista de lista sin el botón de favoritos. También puedes personalizar el diseño y agregar más funcionalidades según tus requerimientos.