iOS Solution
문자열 현지화, 로컬라이제이션, localization
vulcanus
2022. 9. 2. 09:45
import Foundation
struct Langs
{
var ko : String = ""
var en : String = ""
}
class LocalMSG
{
static var messages : [Langs] = []
static var currentLangCode : String = ""
static func setup()
{
// 언어 코드를 저장해 놓는다.
Self.currentLangCode = Locale.current.languageCode!
// korea : ko
// english : en (USA)
// english : (England)
createMessages()
}
static func createMessages()
{
let m0 = Langs(ko: "지출", en:"Expenditure")
Self.messages.append(m0)
let m1 = Langs(ko: "선택", en:"Select")
Self.messages.append(m1)
let m2 = Langs(ko: "취소", en:"Cancel")
Self.messages.append(m2)
let m3 = Langs(ko: "저장", en:"Save")
Self.messages.append(m3)
let m4 = Langs(ko: "모두 선택", en:"Select All")
Self.messages.append(m4)
let m5 = Langs(ko: "모두 해제", en:"Deselect All")
Self.messages.append(m5)
let m6 = Langs(ko: "삭제", en:"Delete")
Self.messages.append(m6)
let m7 = Langs(ko: "예산", en:"Budget")
Self.messages.append(m7)
let m8 = Langs(ko: "보기", en:"View")
Self.messages.append(m8)
let m9 = Langs(ko: "입력", en:"Input")
Self.messages.append(m9)
let m10 = Langs(ko: "이름과 가격을 입력하세요",
en:"Please enter name or price")
Self.messages.append(m10)
let m11 = Langs(ko: "폴더는 하위 항목을 1개 이상 가져야 합니다",
en:"Folder must have at least one sub item")
Self.messages.append(m11)
let m12 = Langs(ko: "알림", en:"Alert")
Self.messages.append(m12)
let m13 = Langs(ko: "확인", en:"OK")
Self.messages.append(m13)
let m14 = Langs(ko: "정말 저장하시겠습니까?", en:" Are you sure you want to save?")
Self.messages.append(m14)
let m15 = Langs(ko: "품명", en: "NAME")
Self.messages.append(m15)
let m16 = Langs(ko: "가격", en: "PRICE")
Self.messages.append(m16)
let m17 = Langs(ko: "단가", en: "PRICE")
Self.messages.append(m17)
let m18 = Langs(ko: "폴더명", en: "Folder Name")
Self.messages.append(m18)
let m19 = Langs(ko: "수량", en: "QTY")
Self.messages.append(m19)
let m20 = Langs(ko: "금액", en: "TOTAL")
Self.messages.append(m20)
}
static func getMSG(id: Int) -> String
{
let langs = LocalMSG.messages[id]
if Self.currentLangCode == "ko"{
return langs.ko
}else{
return langs.en
}
}
}