[flutter] 플러터 shimmer를 활용한 스와이프 애니메이션

이번 포스트에서는 Flutter 앱에서 Shimmer 애니메이션을 사용하여 스와이프 효과를 구현하는 방법을 알아보겠습니다. Shimmer 애니메이션은 콘텐츠가 로딩되는 동안 사용자에게 로딩 중임을 시각적으로 전달하는 데 사용됩니다.

Shimmer 애니메이션 소개

Shimmer 애니메이션은 화면 상에 번쩍이는 광선 모양의 애니메이션 효과를 가집니다. 이는 콘텐츠가 로딩 중임을 사용자에게 시각적으로 표시하여 콘텐츠의 로딩이 완료될 때까지 사용자의 대기 시간을 줄여줍니다.

Flutter에서 Shimmer 애니메이션 활용

Flutter에서 Shimmer 애니메이션을 활용하기 위해서는 ‘shimmer’ 패키지를 사용할 수 있습니다. 이 패키지는 Shimmer 애니메이션 효과와 함께 간단한 메서드를 제공하여 구현을 용이하게 합니다.

먼저, pubspec.yaml 파일에 아래와 같이 shimmer 패키지를 추가합니다.

dependencies:
  shimmer: ^2.0.0

그런 다음, 아래의 예시 코드와 같이 Shimmer 애니메이션을 구현할 수 있습니다.

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

class ShimmerSwipeEffect extends StatelessWidget {
  @override
  Widget build(BuildContext context) {
    return ListView.builder(
      itemBuilder: (BuildContext context, int index) {
        return Shimmer.fromColors(
          baseColor: Colors.grey[300],
          highlightColor: Colors.grey[100],
          child: ListTile(
            leading: CircleAvatar(
              backgroundColor: Colors.grey[300],
              radius: 30,
            ),
            title: Text('로딩 중'),
            subtitle: Text('로딩 중'),
          ),
        );
      },
    );
  }
}

위 코드에서는 shimmer 패키지에서 제공하는 Shimmer.fromColors 위젯을 사용하여 ListTile을 감싸고 있습니다. 이를 사용하여 로딩 중에 Shimmer 애니메이션을 ListTile에 적용할 수 있습니다.

마치며

이렇게 Flutter에서 Shimmer 애니메이션을 활용하여 스와이프 효과를 구현하는 방법에 대해 알아보았습니다. Shimmer 애니메이션을 사용하면 사용자 경험을 개선하고 앱의 로딩 시간을 보다 유익하게 활용할 수 있습니다. Shimmer 애니메이션을 사용하여 앱의 로딩 화면을 개선하고 사용자에게 더 나은 환경을 제공해보세요!