[flutter] 플러터 intl을 사용하기 위해서는 어떻게 해야 하나요?
플러터에서 intl을 사용하려면 다음 단계를 따라야 합니다.
-
pubspec.yaml
파일을 열고, dependencies에flutter_localizations
패키지를 추가합니다. 아래와 같이 작성합니다:dependencies: flutter: sdk: flutter flutter_localizations: sdk: flutter
-
main.dart
파일을 열고,import 'package:flutter_localizations/flutter_localizations.dart';
문을 추가합니다. -
MaterialApp 위젯의
localizationsDelegates
속성에GlobalMaterialLocalizations.delegate
와GlobalWidgetsLocalizations.delegate
를 추가합니다. 예시는 다음과 같습니다:MaterialApp( localizationsDelegates: [ GlobalMaterialLocalizations.delegate, GlobalWidgetsLocalizations.delegate, ], supportedLocales: [ const Locale('en', 'US'), // 영어 const Locale('ko', 'KR'), // 한국어 // ...여러 언어를 추가할 수 있습니다. ], // 위에서 추가한 언어들 중 기본 언어를 설정합니다. // 앱이 해당 언어를 지원하지 않을 때 기본 언어로 사용됩니다. localeResolutionCallback: (locale, supportedLocales) { for (var supportedLocale in supportedLocales) { if (supportedLocale.languageCode == locale.languageCode && supportedLocale.countryCode == locale.countryCode) { return supportedLocale; } } return supportedLocales.first; }, // 다국어 설정을 위한 별도의 파일을 생성하고 빌드할 수도 있습니다. // 이 방법에 대한 자세한 내용은 플러터 공식 문서를 참조해주세요. // (https://flutter.dev/docs/development/accessibility-and-localization/internationalization) ... )
-
앱의 레이아웃에서 다국어 지원이 필요한 문자열들을 가져옵니다. 이때
MaterialLocalizations.of(context).xxxx
를 사용하면 됩니다. 예시로title
문자열을 가져오는 방법은 다음과 같습니다:String title = MaterialLocalizations.of(context).title;
플러터 intl을 사용하면 앱을 다양한 언어로 지원할 수 있게 됩니다. 자세한 내용은 공식 플러터 문서를 참조하세요.