ios - 如何检测语言环境?

标签 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,则它不起作用。

最佳答案

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

西类牙区域代码是“es”。您可以在此处找到代码列表:LINK

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

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

关于ios - 如何检测语言环境?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59874738/

相关文章:

ios - 在 iOS 中使用导航的私有(private)属性(property)离线 map

ios - "UIPickerView"中的多列

android - 如何恢复 Android 应用程序的默认语言环境

java - Jenkins Linux 从站语言环境

ios - 无法使用 String 类型的索引下标 NSMutableDictionary 类型的值

ios - Swift 项目中 Objective-C 的条件编译

ios - 电话 : & callto html not working with iphone for service numbers like *000#

swift - 中止陷阱 : 6 in protocol extension with typealias definitions

ios - 如果 View 位于 UIStackView 内部,则中心点错误

java - 捆绑的 JavaFX 应用程序使用非英语参数运行时抛出 "Could not start JVM"