【Swift 3.0】iOS 国际化切换语言

时间:2022-10-14 20:22:40

 

 

  有的 App 可能有切换语言的选项,结合系统自动切换最简单的办法:

fileprivate var localizedBundle: Bundle = {
return Bundle(path: Bundle.main.path(forResource: "zh-Hans", ofType: "lproj")!)!
}()

public func LocalizedString(_ key: String, comment: String) -> String {
let localText
= NSLocalizedString(key, tableName: "Localizable", bundle: localizedBundle, comment: "")
return localText == key ? comment : localText
}

  代码说明:

    1、"Localizable" 指的是 Localizable.strings

    2、"zh-Hans" 这里强制指定中文

    3、如果强制指定就用上面的代码,否则可以直接用 NSLocalizedString(key, comment: "") 根据系统语言自动切换。