Ios 如何获取区域设置的完整显示名称

Ios 如何获取区域设置的完整显示名称,ios,swift,Ios,Swift,我想展示”繁體中文", "简体中文" 从某种角度来看 我使用Locale.displayname获取displayname,我的参数是“zh Hant”和“zh Hans”,值将返回“中文(繁體)“和”中文(简体)“ 以下是我的部分代码: let loacleName = locale.displayName(forKey: NSLocale.Key.identifier, value: "zh-Hant") 有人知道我该怎么做吗?”繁體中文", "简体中文“从iOS函数?这是一个使用本机区域

我想展示”繁體中文", "简体中文" 从某种角度来看

我使用Locale.displayname获取displayname,我的参数是“zh Hant”和“zh Hans”,值将返回“中文(繁體)“和”中文(简体)“

以下是我的部分代码:

let loacleName = locale.displayName(forKey: NSLocale.Key.identifier, value: "zh-Hant")

有人知道我该怎么做吗?”繁體中文", "简体中文“从iOS函数?

这是一个使用本机
区域设置
的解决方案。对于标识符
zh Hant
zh Hans
,它使用正则表达式删除不需要的字符(请注意,字符是而不是括号和空格字符),并交换这两对字符

extension Locale {
    var localizedFullDisplayName : String? {
        if self.identifier.hasPrefix("zh-Han") {
            guard let trimmed = self.localizedString(forIdentifier: self.identifier)?.replacingOccurrences(of: "[()]", with: "", options: .regularExpression) else { return nil }
            return String(trimmed.suffix(2) + trimmed.prefix(2))
        } else {
            return self.localizedString(forIdentifier: locale.identifier)
        }
    }
}

let locale = Locale(identifier: "zh-Hans")
locale.localizedFullDisplayName

比我的回答更好:)谢谢你的回复。我的解决方法就是这样。我发现iPhone中的语言设置可以显示完整的displayname,而不仅仅是部分,所以我问这个问题是为了确认我是否遗漏了什么。