Как определить локаль? - PullRequest
       44

Как определить локаль?

3 голосов
/ 23 января 2020

Я хочу определить регион, и если это не Испания, мне нужно создать проверку следующим образом:

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 ]

4 голосов
/ 23 января 2020
 let myRegion = Locale.current.regionCode
 if myRegion == "ES" {
        //some code 
    } else {
        //s
    } 

Код региона Испании - "es". Список кодов вы можете найти здесь: LINK

Если вы находитесь в той же стране, самый простой способ узнать код региона:

let locale = Locale.current
print(locale.regionCode)
0 голосов
/ 23 января 2020

Вы можете использовать Locale.current.regionCode.

...