当我使用displayNameForKey
时,对于某种语言,返回的字符串太长,与iOS设置应用中的本机语言设置不同。例如:
let locale = NSLocale(localeIdentifier: "zh-Hant")
let key = NSLocaleIdentifier
print(locale.displayNameForKey(key, value: "zh-Hans")!, locale.displayNameForKey(key, value: "zh-Hant-HK")!)
// return 中文(簡體)and 中文(繁體,中華人民共和國香港特別行政區)
// but what I want is like the native language settings: 簡體中文 and 繁體中文(香港)
如何获得短语名称?
答案 0 :(得分:0)
在iOS10中,现在可以使用NSLocale的localizedString(forLanguageCode :)方法来获取短语言名称。
在Swift 3中
let langName = NSLocale.preferredLanguages[0]
let locale = NSLocale(localeIdentifier: "zh-Hant")
let fullName = locale.localizedString(forLanguageCode: lang)!