티스토리 뷰
flutter 프로젝트에 다국어 처리로 phrase를 적용하기로 함.
pub.dev phrase: https://pub.dev/packages/phrase
phrase | Flutter Package
Phrase Strings over-the-air translations library for Flutter
pub.dev
pub.dev에서 phrase가이드를 보니
phrase를 사용하기위해 우선 flutter 기본 문서의 다국어 처리를 하고, 그후에 phrase를 적용해야한다.
https://docs.flutter.dev/ui/accessibility-and-internationalization/internationalization
Internationalizing Flutter apps
How to internationalize your Flutter app.
docs.flutter.dev
플러터 프로젝트의 터미널에서 아래의 명령어를 입력하여 라이브러리를 추가해준다
flutter pub add flutter_localizations --sdk=flutter
flutter pub add intl:any
phrase도 추가해준다
flutter pub add phrase
pubspec.yaml파일에 추가된것 확인
아래로 내려서 아래 내용 추가
generate : true
프로젝트의 root directory에 새파일 생성 > l10n.yaml 생성한다
arb-dir: lib/l10n
template-arb-file: app_en.arb
output-localization-file: app_localizations.dart
lib폴더 아래에 l10n폴더생성 한다,
그 안에 새파일 > app_en.arb파일을 추가해준다. << phrase에서 추출해서 추가해줘야함
https://cho22.tistory.com/99 << 여기에 샘플 파일 있음
flutter phrase적용 - phrase 추출하기
https://us.phrase.com/idm-ui/dashboard https://us.phrase.com/idm-ui/logout us.phrase.com 언어추가 > en, ko추가해줌 (이 이름대로 파일명이 추출되니 app_en, app_ko로 하는게 좋은것같음, l10n.yaml 파일에서 설정한 이름이 a
cho22.tistory.com
아래의 명령어 실행하여 코드 제너레이트
flutter pub run phrase
flutter pub get
.dart_tool 아래에 생성된것 확인
코드에서 사용
import 'package:flutter/material.dart';
import 'package:flutter_gen/gen_l10n/app_localizations.dart';
import 'package:flutter_gen/gen_l10n/phrase_localizations.dart';
import 'package:phrase/phrase.dart';
void main() {
runApp(MyApp());
}
class MyApp extends StatelessWidget {
@override
Widget build(BuildContext context) {
return MaterialApp(
title: 'Flutter Demo',
//..
localizationsDelegates: PhraseLocalizations.localizationsDelegates,
supportedLocales: PhraseLocalizations.supportedLocales,
);
}
}
위젯에서 사용 (helloWorld는 키값)
Text(AppLocalizations.of(context)!.helloWorld);
'공부' 카테고리의 다른 글
spring spring-boot-gradle-plugin 오류 (0) | 2024.02.02 |
---|---|
flutter phrase적용 - phrase 추출하기 (0) | 2023.11.08 |
C언어 도서 대출 프로그램 (1) | 2020.12.11 |
[C#] 값형식과 참조형식 (2) | 2020.11.27 |
- Total
- Today
- Yesterday
- 언제어디서나요요
- 기술면접
- 연말정산
- Library/PackageCache
- 도서대출프로그램
- c언어
- 스토케요요
- 성남돌잔치
- 유니티 a href
- 연결리스트
- 유니티 텍스트 하이퍼링크
- 내돈내산
- scrollview particle
- Unreal
- 구글 스프레드시트 드롭다운
- C#
- ngui 스크롤뷰 파티클
- particle cliping
- ngui 스크롤뷰
- 값형식과 참조형식의 차이
- 유니티 개발자 면접
- ngui scrollview particle
- UPROPERTY
- ngui 파티클
- 휴대용유모차
- 유니티 Library
- ngui 스크롤뷰 파티클 클리핑
- 직군면접
- 클라이언트 면접
- 베이비젠요요
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | ||||||
2 | 3 | 4 | 5 | 6 | 7 | 8 |
9 | 10 | 11 | 12 | 13 | 14 | 15 |
16 | 17 | 18 | 19 | 20 | 21 | 22 |
23 | 24 | 25 | 26 | 27 | 28 |