[flutter] 플러터 Lottie로 일기 예보 앱의 애니메이션 날씨 아이콘 효과 구현하기

앱 개발에서는 사용자 경험을 향상시키기 위해 다양한 애니메이션 효과를 적용하는 것이 중요합니다. 이번 블로그 포스트에서는 플러터(Flutter)의 Lottie 패키지를 사용하여 일기 예보 앱의 날씨 아이콘에 애니메이션 효과를 구현하는 방법을 알아보겠습니다.

Lottie란?

Lottie는 Airbnb에서 개발한 애프터 이펙트(Adobe After Effects) 애니메이션 파일(.json)을 모바일 앱에 쉽게 통합할 수 있는 라이브러리입니다. Lottie를 사용하면 웹 개발자나 디자이너도 별도의 개발 지식 없이 애프터 이펙트 애니메이션을 앱에 적용할 수 있습니다.

Lottie 패키지 설치하기

플러터에서 Lottie를 사용하기 위해서는 lottie 패키지를 설치해야 합니다. pubspec.yaml 파일에 아래의 의존성을 추가해주세요.

dependencies:
  lottie: ^1.0.0

의존성을 추가한 후, 터미널에서 다음 명령어를 실행하여 패키지를 설치해주세요.

flutter pub get

Lottie 애니메이션 파일 준비하기

Lottie 애니메이션 파일(.json)은 Adobe After Effects와 Bodymovin 플러그인을 사용하여 생성할 수 있습니다. 이 플러그인은 애프터 이펙트에서 제작한 애니메이션을 JSON 형식으로 내보낼 수 있게 해줍니다.

애니메이션 파일을 준비한 후, 플러터 프로젝트의 assets 폴더에 이동시켜주세요.

Lottie 애니메이션 화면에 표시하기

이제 Lottie 패키지를 사용하여 애니메이션을 화면에 표시해보겠습니다.

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

class WeatherForecastScreen extends StatelessWidget {
  @override
  Widget build(BuildContext context) {
    return Scaffold(
      appBar: AppBar(
        title: Text('일기 예보'),
      ),
      body: Center(
        child: Lottie.asset(
          'assets/weather_animation.json', // 애니메이션 파일 경로
          height: 200, // 애니메이션의 높이
          width: 200, // 애니메이션의 너비
        ),
      ),
    );
  }
}

위의 코드에서는 Center 위젯 안에 Lottie.asset 위젯을 사용하여 애니메이션을 화면에 표시하고 있습니다. Lottie.asset 위젯은 assets 폴더에 있는 애니메이션 파일의 경로를 지정하여 애니메이션을 로드합니다.

애니메이션의 크기는 height와 width 속성을 통해 조절할 수 있습니다.

마무리

이제 Lottie를 통해 일기 예보 앱의 날씨 아이콘에 애니메이션 효과를 구현하는 방법을 알아보았습니다. Lottie를 사용하면 디자이너와 웹 개발자들도 쉽게 애프터 이펙트 애니메이션을 앱에 적용할 수 있습니다. 더 멋진 애니메이션 효과를 위해 다양한 Lottie 애니메이션 파일을 찾아보세요.

참고 자료