연결된 소스 저장소의 README 원문 스냅샷입니다. 최신 내용은 저장소에서 확인하세요.
ImageFade
A widget for Flutter that displays a placeholder widget while a specified image loads, then cross-fades to the loaded image. Also handles progress and errors. It uses Image.opacity when appropriate for improved performance.
If image is changed, it will cross-fade to the new image once it is finished loading. Setting image to null will cross-fade back to the placeholder.

You can set duration and curve, as well as most Image properties:
width, height, fit, alignment, repeat, matchTextDirection, excludeFromSemantics and semanticLabel.
Use loadingBuilder and errorBuilder to display load progress or error states. Optionally specify syncDuration to
use a different (usually faster) duration for fading in a synchronously loaded image, error, or placeholder.
ImageFade(
image: NetworkImage(url),
duration: const Duration(milliseconds: 900),
syncDuration: const Duration(milliseconds: 150),
alignment: Alignment.center,
fit: BoxFit.cover,
placeholder: Container(
color: const Color(0xFFCFCDCA),
alignment: Alignment.center,
child: const Icon(Icons.photo, color: Colors.white30, size: 128.0),
),
loadingBuilder: (context, progress, chunkEvent) =>
Center(child: CircularProgressIndicator(value: progress)),
errorBuilder: (context, error) => Container(
color: const Color(0xFF6F6D6A),
alignment: Alignment.center,
child: const Icon(Icons.warning, color: Colors.black26, size: 128.0),
),
)
Image Caching
ImageFade is compatible with CachedNetworkImageProvider.
Installing
The published version of this package is availble on pub.dev.
Example
See the example directory for a simple example.