基于Swift中设备语言的条件代码

时间:2016-11-01 20:59:36

标签: ios swift localization

我尝试根据设备的语言创建if语句。

例如: 如果设备的语言是英语() 否则,如果设备的语言是西班牙语() 否则,如果设备的语言是阿拉伯语() ...等

但无法弄清楚如何去做。

2 个答案:

答案 0 :(得分:6)

你有两个部分。第一种是从当前语言环境中获取当前语言。

斯威夫特3:

let languageCode = Locale.current.languageCode

第二部分是检查它是哪种语言:

if let languageCode = Locale.current.languageCode {
    switch languageCode {
        case "en":
            // handle English
        case "es":
            // handle Spanish
        case "ar":
            // handle Arabic
        default:
            // handle others
    }
}

答案 1 :(得分:1)

您可以使用NSLocalepreferredLanguages方法:

let language = NSLocale.preferredLanguages[0]

if language.hasPrefix("en") {
    //english
}
else if language.hasPrefix("ar") {
    //arabic
}