[flutter] easy_localization의 자동 로컬라이제이션 기능 소개

개요

easy_localization은 DartFlutter 프로젝트를 위한 간단한 로컬라이제이션 패키지입니다. 이 패키지를 사용하면 언어 파일을 추가하고 국제화된 문자열을 손쉽게 사용할 수 있습니다. 이 글에서는 easy_localization의 자동 로컬라이제이션 기능에 대해 소개하겠습니다.

자동 로컬라이제이션 설정

easy_localization 패키지를 이용하면 자동 로컬라이제이션 기능을 쉽게 설정할 수 있습니다. 자동 로컬라이제이션은 사용자의 기기 설정에 따라 자동으로 앱의 언어를 설정해주는 기능입니다. 이를 통해 사용자가 별도로 언어를 선택하지 않더라도 기기의 언어 설정에 맞게 앱의 언어가 변경됩니다.

다음은 easy_localization 패키지를 사용하여 자동 로컬라이제이션을 설정하는 예제 코드입니다.

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

void main() {
  runApp(
    EasyLocalization(
      supportedLocales: [Locale('en', 'US'), Locale('ko', 'KR')],
      path: 'assets/translations', // 번역 파일이 있는 경로
      fallbackLocale: Locale('en', 'US'), // 기본 로케일
      startLocale: Locale('ko', 'KR'), // 시작 로케일
      child: MyApp(),
    ),
  );
}

class MyApp extends StatelessWidget {
  @override
  Widget build(BuildContext context) {
    return MaterialApp(
      localizationsDelegates: context.localizationDelegates,
      supportedLocales: context.supportedLocales,
      locale: context.locale,
      home: MyHomePage(),
    );
  }
}

class MyHomePage extends StatelessWidget {
  @override
  Widget build(BuildContext context) {
    return Scaffold(
      appBar: AppBar(
        title: Text('title').tr(), // 번역 키값 사용
      ),
      body: Center(
        child: Text('hello').tr(), // 번역 키값 사용
      ),
    );
  }
}

결론

easy_localization 패키지를 사용하면 간단하게 자동 로컬라이제이션을 설정할 수 있습니다. 이를 통해 다국어 지원이 필요한 앱을 개발할 때 번거로운 로컬라이제이션 설정을 간편하게 처리할 수 있습니다.

더 많은 정보를 원하시면 easy_localization 공식 문서를 참고하시기 바랍니다.