如何检测语言环境?

时间:2020-01-23 09:01:57

标签: ios swift locale

我想检测区域,如果不是西班牙,则需要像这样创建支票:

if myRegion == Spain {

    //some code

} else {

    //some code

}

我试图这样做,但这是行不通的:

let myRegion = Locale.current

if myRegion == Locale(identifier: "sp") {
    //some code
} else {
    //some code
}

更新

if myRegion == Locale(identifier: "es") {
    print("YES")
} else {
    print("NO")
} 

let locale = Locale.current
print(locale.regionCode)

这是行不通的。在控制台中,我看到:

NO
Optional("ES")

如果我将es更改为ES,那是行不通的。

2 个答案:

答案 0 :(得分:5)

 let myRegion = Locale.current.regionCode
 if myRegion == "ES" {
        //some code 
    } else {
        //s
    } 

西班牙的区域代码为“ es”。您可以在此处找到代码列表:ProcessBuilder

如果您在同一个国家/地区,查找区域代码的最简单方法是:

let locale = Locale.current
print(locale.regionCode)

答案 1 :(得分:0)

您可以使用Locale.current.regionCode