[flutter] 플러터 shimmer를 이용한 앱의 메시지 애니메이션 구현 방법

플러터(Flutter)를 사용하여 모바일 앱을 개발하는 경우, 사용자 경험을 향상시키기 위해 애니메이션을 추가하는 것이 중요합니다. 특히, 메시지를 가져오거나 처리하는 동안 사용자에게 로딩 중임을 시각적으로 전달하는 것은 중요합니다. 이를 위해 Shimmer 효과를 활용하여 앱의 메시지 애니메이션을 구현하는 방법에 대해 알아보겠습니다.

Shimmer 효과란?

Shimmer 효과는 화면 상의 요소가 반짝이는 효과를 주면서 로딩 중임을 표현하는 UI/UX 기술입니다. 화면 요소가 개별적으로 반짝거리며 나타나는 모양으로, 사용자에게 로딩 중임을 시각적으로 전달하는 데 유용합니다.

플러터를 이용한 Shimmer 구현

플러터에서 Shimmer 효과를 쉽게 구현할 수 있도록 shimmer 패키지를 활용할 수 있습니다. 해당 패키지를 설치하고, 다음과 같이 Shimmer 애니메이션을 구현할 수 있습니다.

먼저, pubspec.yaml 파일에 Shimmer 패키지를 추가합니다.

dependencies:
  shimmer: ^2.0.0

다음으로, Flutter 화면에 Shimmer 애니메이션을 적용하려는 부분에서 다음과 같이 코드를 작성합니다.

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

class MessageScreen extends StatelessWidget {
  @override
  Widget build(BuildContext context) {
    return Scaffold(
      appBar: AppBar(
        title: Text('메시지'),
      ),
      body: ListView.builder(
        itemCount: 10,
        itemBuilder: (context, index) {
          return Shimmer.fromColors(
            baseColor: Colors.grey[300],
            highlightColor: Colors.grey[100],
            child: ListTile(
              leading: CircleAvatar(
                backgroundColor: Colors.grey[300],
              ),
              title: Text('로딩 중...'),
              subtitle: Text('로딩 중...'),
            ),
          );
        },
      ),
    );
  }
}

위 코드에서 Shimmer.fromColors 위젯을 사용하여 ListTile을 감싸고, baseColorhighlightColor를 설정하여 Shimmer 효과를 적용합니다. 이를 통해 ListView 항목이 로딩 중임을 나타내는 Shimmer 애니메이션을 구현할 수 있습니다.

위의 예시를 참고하여 Shimmer 효과를 적용하여 앱의 메시지를 로딩 중임을 시각적으로 전달하는 기능을 구현할 수 있습니다.

결론

플러터에서 Shimmer 효과를 활용하여 앱의 메시지 애니메이션을 구현하는 방법에 대해 알아보았습니다. Shimmer 효과를 사용하면 사용자에게 로딩 중임을 시각적으로 전달하고, 앱의 사용자 경험을 향상시킬 수 있습니다. Shimmer 효과를 활용하여 앱의 다양한 UI 요소에 로딩 표시를 추가하여 사용자들에게 더 나은 경험을 제공할 수 있습니다.

References