일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- PyQt5
- cocoapods
- button
- ios
- Apple
- library
- UIKit
- graph
- 라이브러리
- UITableView
- kotlin
- Android
- Python
- Storyboard
- PyQt
- TableView
- alamofire
- UIButton
- charts
- 그래프
- modal
- androidstudio
- 개발
- Chart
- 개발자
- 어플리케이션
- Swift
- ui
- Chrats
- Xcode
- Today
- Total
Jiwift
[iOS/Swift] 앱 현지화 다국어 지원 이름, 권한 동의, 메뉴 등 현지화를 위한 다국어 작업 본문
Xcode15 iOS 앱 이름, 권한 동의, 메뉴 등 현지화를 위한 다국어 지원
앱 현지화를 위해서 String Catalog를 사용합니다. 파일을 생성할 때 이름을 정해주기만 하면 Xcode와 앱이 알아서 언어를 설정해 줍니다.
String Catalog 이름은 위와 같이 설정해 주면 됩니다.
Localizable: 앱 안에서 사용하는 String Catalog
InfoPlist: 권한 동의나 앱 이름에서 사용하는 String Catalog
앱 안에서 사용하기 위한 String Catalog입니다. Key를 사용해서 설정된 언어를 불러옵니다.
self.topTitleLabel.text = String(localized: "Key")
위와 같이 Key 자리에 미리 설정한 것을 입력해 주면 앱에서 알맞게 출력합니다. 사진을 기준으로 예를 들어보면
self.topTitleLabel.text = String(localized: "TwoButtonDeleteRecentLikeTitle")
이렇게 Key를 입력하면 'topTitleLabel'은 한글 사용자인 경우 "기록 삭제", 영어 사용자인 경우 "Delete"가 표시됩니다. UI가 언어에 맞게 잘 표시되는지 확인을 해주세요.
InfoPlist String Catalog 예시입니다. 'CFBundleName', 'CFBundleDisplayName'를 통해서 앱 이름을 현지화할 수 있습니다. 사용자 언어에 따라서 설치된 이름이 '복붙태그', 'CopyTag'로 나뉘게 됩니다.
'NSUserTrackingUsageDescription'를 통해서 추적 허용 알림 문구를 현지화 작업을 해주었습니다.
String Catalog 사용하면서 좋은 점
1. Key를 잘 못 입력해도 실행된다.
- Key를 잘 못 입력해서 실행한 경우 빌드 단계에서 자동으로 String Catalog에 잘 못 입력된 Key가 추가됩니다. 이를 통해 잘못입력한 부분을 찾거나, 현지화 문구를 정해주지 않은 부분을 금방 확인할 수 있습니다.
2. Key를 추가하고 현지화가 되지 않은 것을 쉽게 찾을 수 있다.
위 사진처럼 현지화가 완료되지 않은 경우 %를 통해서 알려주고 새로 추가된 항목은 'new'라고 알려준다.
'iOS Dev > Xcode' 카테고리의 다른 글
[iOS/Swift] Xcode WebKit Build Crash 해결 (1) | 2024.05.29 |
---|---|
[iOS/Xcode] Failed to load Info.plist from bundle 에러 파이어베이스 문제 (0) | 2024.03.07 |
[iOS/Xcode] Framework Privacy Manifest 추가 실험 (0) | 2024.03.01 |
[iOS/Swift] Framework Dynamic과 Static 차이점 (0) | 2024.03.01 |
[iOS/Xcode] Xcode User-Defined CONFIGURATION_BUILD_DIR (0) | 2024.03.01 |