•  


Fade in images with a placeholder | Flutter

Fade in images with a placeholder

When displaying images using the default Image widget, you might notice they simply pop onto the screen as they're loaded. This might feel visually jarring to your users.

Instead, wouldn't it be nice to display a placeholder at first, and images would fade in as they're loaded? Use the FadeInImage widget for exactly this purpose.

FadeInImage works with images of any type: in-memory, local assets, or images from the internet.

In-Memory

#

In this example, use the transparent_image package for a simple transparent placeholder.

dart
FadeInImage
.
memoryNetwork
(

  placeholder: kTransparentImage,

  image: 
'https://picsum.photos/250?image=9'
,

),

Complete example

#
dart
import
 'package:flutter/material.dart'
;

import
 'package:transparent_image/transparent_image.dart'
;


void
 main
() {

  runApp
(
const
 MyApp
());

}


class
 MyApp
 extends
 StatelessWidget
 {

  const
 MyApp
({
super
.key});


  @override

  Widget
 build
(
BuildContext
 context) {

    const
 title = 
'Fade in images'
;


    return
 MaterialApp
(

      title: title,

      home: 
Scaffold
(

        appBar: 
AppBar
(

          title: 
const
 Text
(title),

        ),

        body: 
Stack
(

          children: <
Widget
>[

            const
 Center
(child: 
CircularProgressIndicator
()),

            Center
(

              child: 
FadeInImage
.
memoryNetwork
(

                placeholder: kTransparentImage,

                image: 
'https://picsum.photos/250?image=9'
,

              ),

            ),

          ],

        ),

      ),

    );

  }

}

Fading In Image Demo

From asset bundle

#

You can also consider using local assets for placeholders. First, add the asset to the project's pubspec.yaml file (for more details, see Adding assets and images ):

 flutter:

   assets:

+    - assets/loading.gif

Then, use the FadeInImage.assetNetwork() constructor:

dart
FadeInImage
.
assetNetwork
(

  placeholder: 
'assets/loading.gif'
,

  image: 
'https://picsum.photos/250?image=9'
,

),

Complete example

#
dart
import
 'package:flutter/material.dart'
;


void
 main
() {

  runApp
(
const
 MyApp
());

}


class
 MyApp
 extends
 StatelessWidget
 {

  const
 MyApp
({
super
.key});


  @override

  Widget
 build
(
BuildContext
 context) {

    const
 title = 
'Fade in images'
;


    return
 MaterialApp
(

      title: title,

      home: 
Scaffold
(

        appBar: 
AppBar
(

          title: 
const
 Text
(title),

        ),

        body: 
Center
(

          child: 
FadeInImage
.
assetNetwork
(

            placeholder: 
'assets/loading.gif'
,

            image: 
'https://picsum.photos/250?image=9'
,

          ),

        ),

      ),

    );

  }

}

Asset fade-in

- "漢字路" 한글한자자동변환 서비스는 교육부 고전문헌국역지원사업의 지원으로 구축되었습니다.
- "漢字路" 한글한자자동변환 서비스는 전통문화연구회 "울산대학교한국어처리연구실 옥철영(IT융합전공)교수팀"에서 개발한 한글한자자동변환기를 바탕하여 지속적으로 공동 연구 개발하고 있는 서비스입니다.
- 현재 고유명사(인명, 지명등)을 비롯한 여러 변환오류가 있으며 이를 해결하고자 많은 연구 개발을 진행하고자 하고 있습니다. 이를 인지하시고 다른 곳에서 인용시 한자 변환 결과를 한번 더 검토하시고 사용해 주시기 바랍니다.
- 변환오류 및 건의,문의사항은 juntong@juntong.or.kr로 메일로 보내주시면 감사하겠습니다. .
Copyright ⓒ 2020 By '전통문화연구회(傳統文化硏究會)' All Rights reserved.
 한국   대만   중국   일본