flutter中的CachedNetworkImage不适用于本地映像



考虑到这个名字,这可能是一个愚蠢的问题,但CachedNetworkImage对本地图像有效吗?

import 'package:cached_network_image/cached_network_image.dart';
import 'package:flutter/material.dart';
class SigninPage extends StatelessWidget {
const SigninPage({super.key});
@override
Widget build(BuildContext context) {
return Scaffold(
appBar: AppBar(
title: const Text("Welcome"),
),
body: 
Center(
child: CachedNetworkImage(
imageUrl: 'assets/images/apple_cartoon.png',
imageBuilder: (context, imageProvider) {
return Container(
decoration: BoxDecoration(
image: DecorationImage(
image: imageProvider, fit: BoxFit.cover)));
},
placeholder: (context, url) =>
const CircularProgressIndicator(),
errorWidget: (context, url, error) => const Icon(Icons.error),
),
),
);
}
}

这将返回错误图标

使用Image.asset可以很好地工作,所以我认为您不能将本地图像与CachedNetworkImage一起使用,但在网上找不到任何确认,希望确保情况确实如此。

CachedNetworkImage用于从互联网检索图像,将其存储在缓存中,然后即使没有连接也可以重新显示。而您的本地图像不需要连接即可显示。这就是为什么你只能在Widget 的imageUrl字段中给出一个url

CachedNetworkImage是一个颤振库,用于显示来自互联网的图像并将其保存在缓存目录中。

最新更新