iOS/Swift
[Swift] 다국어(Localize) 처리하기 +a
min_ee
2018. 8. 29. 10:57
안녕하세요:)
저번 포스트에서는 앱 다국어 처리를 알아보았습니다.
이번 포스트에서는
lbl.text = String(format: NSLocalizedString("Hello", comment: ""))
이 코드, 어떻게 일일이 다 치나요..?
간단하게 줄여보도록 합시다!
우선 String Extension 파일을 하나 만들어 줍니다.
// StringExtension.swift
extension String {
var localized: String {
return NSLocalizedString(self, tableName: nil, bundle: Bundle.main, value: "", comment: "")
}
}
끝입니다.
쉽죠?
컨트롤러로 가서
lbl.text = "Hello".localized
이렇게 써주면 다국어 처리 끝!
+) 변수가 있는 경우
다국어 처리를 하다보면
// Localizable.strings (English)
"Me" = "I'm %@";
// Localizable.strings (Korean)
"Me" = "저는 %@입니다";
이런 식으로 변수가 들어가는 경우가 있죠?
그 경우에는
lbl.text = String(format: NSLocalizedString("Me", comment: ""), "민이")
이렇게 해주면 %@가 "민이"로 바뀌게 됩니다.
봐주셔서 감사합니다!
그럼 오늘도 즐코딩><