본문 바로가기
Flutter

[플러터] 비동기 데이터 못 받아왔을때 circularProgressIndicator 넣는 코드

by ESTP 개발자 2023. 5. 16.

 

FutureBuilder(
                future: _future(),
                builder: (BuildContext context, AsyncSnapshot snapshot) {

                  //해당 부분은 data를 아직 받아 오지 못했을 때 실행되는 부분
                  if (snapshot.hasData == false) {
                    return CircularProgressIndicator(); // CircularProgressIndicator : 로딩 에니메이션
                  }

                  //error가 발생하게 될 경우 반환하게 되는 부분
                  else if (snapshot.hasError) {
                    return Padding(
                      padding: const EdgeInsets.all(8.0),
                      
                      child: Text(
                        'Error: ${snapshot.error}', // 에러명을 텍스트에 뿌려줌
                        style: TextStyle(fontSize: 15),
                      ),
                    );
                  }

                  // 데이터를 정상적으로 받아오게 되면 다음 부분을 실행하게 되는 부분
                  else {
                    return Padding(
                      padding: const EdgeInsets.all(8.0),

                      child: Text(
                        snapshot.data.toString(), // 비동기 처리를 통해 받은 데이터를 텍스트에 뿌려줌
                        style: TextStyle(fontSize: 15),
                      ),
                    );
                  }
                })
          ],
        ),

출처 : https://fre2-dom.tistory.com/256

'Flutter' 카테고리의 다른 글

ios 애뮬레이터 m1에 세팅하기  (0) 2023.04.06

댓글