How to get current language code with Swift?

前端 未结 13 2033
难免孤独
难免孤独 2020-12-07 11:06

I want get the language code of the device (en, es...) in my app written with Swift. How can get this?

I\'m trying this:

var preferredLanguages : NSL         


        
相关标签:
13条回答
  • 2020-12-07 11:49

    Locale.current.languageCode returns me wrong code, so I use these extensions:

    extension Locale {
        static var preferredLanguageCode: String {
            let defaultLanguage = "en"
            let preferredLanguage = preferredLanguages.first ?? defaultLanguage
            return Locale(identifier: preferredLanguage).languageCode ?? defaultLanguage
        }
    
        static var preferredLanguageCodes: [String] {
            return Locale.preferredLanguages.compactMap({Locale(identifier: $0).languageCode})
        }
    }
    
    0 讨论(0)
提交回复
热议问题