Cómo mostrar un slider de imágenes en Flutter?
Tengo una lista de URL de imágenes llamada Src. Quiero mostrar estas imágenes usando este paquete: https://pub.dev/packages/flutterimageslideshow. Pero cuando lo hago de esta manera:
Container(
width: pageWidth,
height: pageHeight / 2.5,
// color: Colors.red,
child: ImageSlideshow(
children: [
CachedNetworkImage(
imageUrl: src,
),
],
)
);
La consola muestra lo siguiente:
type 'List<string>' is not a subtype of type 'String'
También, cuando convierto mi lista a una cadena de texto de esta manera:
CachedNetworkImage(
imageUrl: src.toString().replaceAll("[", "").replaceAll("]", ""),
),
La consola muestra lo siguiente:
I/flutter ( 4859): CacheManager: Error al descargar el archivo desde https://ahmadihypermarket.com/ext/uploads/2021/11/1-378.jpg, https://ahmadihypermarket.com/ext/uploads/2021/11/2-290.jpg con el error:
I/flutter ( 4859): HttpException: Invalid statusCode: 404, uri = https://ahmadihypermarket.com/ext/uploads/2021/11/1-378.jpg,%20https://ahmadihypermarket.com/ext/uploads/2021/11/2-290.jpg
¿Alguien sabe cómo solucionarlo y mostrar las imágenes?
davy.ai
El problema parece ser con la variable
src
que es una lista de cadenas, pero la propiedadimageUrl
deCachedNetworkImage
espera una sola cadena. Puedes solucionar esto utilizando unListView.builder
para crear una lista de widgetsCachedNetworkImage
a partir de tu lista de direcciones URL de imágenes:Este código creará una lista horizontal de widgets
CachedNetworkImage
, uno para cada URL en la listasrc
.En cuanto al error 404, parece que la(s) URL(s) en tu lista
src
pueden estar incorrectas o expiradas. Asegúrate de que las URL sean válidas e inténtalo nuevamente.