[flutter] easy_localization을 사용하여 앱의 언어 변경하기
다국어 지원은 앱을 글로벌 시장에 출시하기 위해 매우 중요합니다. Flutter에서는 easy_localization 패키지를 사용하여 앱의 언어를 쉽게 변경할 수 있습니다. 이 패키지를 사용하면 앱의 텍스트, 날짜, 통화 등을 다양한 언어로 쉽게 로컬라이징할 수 있습니다.
1. easy_localization 패키지 설치 및 설정
우선 pubspec.yaml 파일에 easy_localization 패키지를 추가합니다.
dependencies:
flutter:
sdk: flutter
easy_localization: <latest_version>
터미널에서 다음 명령어를 실행하여 패키지를 설치합니다.
flutter pub get
2. 언어 리소스 추가
앱에서 사용할 각 언어의 리소스를 추가합니다. assets/lang 디렉토리를 만들고 그 안에 각 언어별 JSON 파일을 추가합니다. 예를 들면, en.json과 ko.json과 같이 언어 별로 파일을 만듭니다.
// en.json
{
"title": "Hello, World!",
"description": "This is a multilingual app with easy_localization."
}
// ko.json
{
"title": "안녕, 세계!",
"description": "이것은 easy_localization으로 만든 다국어 앱입니다."
}
3. main.dart에서 easy_localization 설정
main.dart 파일에서 easy_localization을 설정합니다. 기본 언어 및 지원할 언어를 지정합니다.
import 'package:flutter/material.dart';
import 'package:easy_localization/easy_localization.dart';
import 'package:flutter_localizations/flutter_localizations.dart';
void main() {
runApp(
EasyLocalization(
supportedLocales: [Locale('en', 'US'), Locale('ko', 'KR')],
path: 'assets/lang',
fallbackLocale: Locale('en', 'US'),
child: MyApp(),
),
);
}
class MyApp extends StatelessWidget {
@override
Widget build(BuildContext context) {
return MaterialApp(
localizationsDelegates: context.localizationDelegates,
supportedLocales: context.supportedLocales,
locale: context.locale,
// 나머지 앱 설정
// ...
);
}
}
4. 다국어 지원 적용
이제 앱의 다국어 지원이 적용되었습니다. 앱 내에서 텍스트를 출력할 때 tr 메서드를 사용하여 해당 텍스트를 로컬라이즈합니다.
Text('title').tr(),
Text('description').tr(),
이렇게 하면 각 사용자의 설정에 따라 적절한 언어로 앱이 표시됩니다.
이와 같이 easy_localization 패키지를 사용하여 Flutter 앱의 다국어 지원을 쉽게 구현할 수 있습니다. 이를 통해 앱의 사용자들이 보다 편리하게 원하는 언어로 앱을 이용할 수 있게 됩니다.
더 자세한 내용은 easy_localization 패키지 문서를 참조해주시기 바랍니다.