[flutter] CircularProgressIndicator를 사용하여 비로그인 상태에서의 로딩 화면을 구현하는 방법은 무엇인가?
어플리케이션에서 데이터를 불러오는 동안에 로딩 화면을 표시하는 것은 사용자 경험을 향상시키는 데 중요합니다. Flutter에서는 CircularProgressIndicator를 사용하여 간단하게 로딩 화면을 구현할 수 있습니다.
1. CircularProgressIndicator 추가
먼저, 로딩 화면을 표시할 화면의 Widget에 CircularProgressIndicator를 추가합니다. 예를 들어, 다음과 같이 사용할 수 있습니다.
import 'package:flutter/material.dart';
class LoadingScreen extends StatelessWidget {
@override
Widget build(BuildContext context) {
return Scaffold(
body: Center(
child: CircularProgressIndicator(),
),
);
}
}
2. 비로그인 상태에서 호출
다음으로, 비로그인 상태에서 데이터를 불러올 때 LoadingScreen을 호출하여 로딩 화면을 표시합니다. 예를 들어, 비로그인 상태에서 데이터를 불러오는 로직을 수행하는 함수 내에서 LoadingScreen을 호출할 수 있습니다.
void fetchData() {
// 사용자가 로그인되지 않은 경우
if (!isLoggedIn) {
Navigator.of(context).push(
MaterialPageRoute(
builder: (context) => LoadingScreen(),
),
);
// 데이터 불러오는 로직 수행
// ...
}
}
이제, 사용자가 로그인되지 않은 상태에서 데이터를 불러올 때 CircularProgressIndicator를 표시하는 로딩 화면을 구현할 수 있습니다.
이 방법을 통해 사용자가 데이터가 로딩되는 동안에 어플리케이션이 멈춰있지 않고 진행 중임을 알 수 있으며, 사용자 경험을 향상시킬 수 있습니다.
참고: https://api.flutter.dev/flutter/material/CircularProgressIndicator-class.html