I have a list of image assets, and I have one Image widget onscreen. I use a button to cycle through them, using setState().
Make sure you have gaplessPlayback
set to true
for your image.
This won't solve the preloading problem, but it will prevent the image from flashing to white when switching assets.
With gaplessPlayback set to true, your original image will remain until the new image has completed loading and no "white flash gap" will be present.
var img = new Image.asset(
_photoData[_coverPhoto],
fit: ImageFit.cover,
height: 600.0,
gaplessPlayback: true,
);