Locale

初始化

init(identifier: String) //identifier: 具有指定的标识符

获取用户的Locale设置

static var autoupdatingCurrent: Locale //跟踪用户当前首选项的区域设置
static var current: Locale //当前用户的区域设置的区域设置

获取已知标识符和代码

static var availableIdentifiers: [String] //可用标识符列表
static var isoRegionCodes: [String] //可用地区代码列表
static var isoLanguageCodes: [String] //可用语言代码列表
static var isoCurrencyCodes: [String] //可用货币代码列表
static var commonISOCurrencyCodes: [String] //常用货币代码列表

标识符转换

static func canonicalIdentifier(from: String) -> String //返回给定字符串中的规范标识符
static func components(fromIdentifier: String) -> [String : String] //返回将标识符拆分为其组件片段的字典
static func identifier(fromComponents: [String : String]) -> String //从组件字典构造标识符
static func canonicalLanguageIdentifier(from: String) -> String //返回给定字符串中的规范语言标识符
static func identifier(fromWindowsLocaleCode: Int) -> String? 、、从给定的Windows语言环境代码返回语言环境标识符,如果无法转换,则返回“nil”

static func windowsLocaleCode(fromIdentifier: String) -> Int? //来自给定标识符的Windows语言环境代码,如果无法转换,则为“nil”

获取locale的信息

var identifier: String //语言环境的标识符
var calendar: Calendar //区域设置的日历,或公历作为后备
var regionCode: String? //语言环境的区域代码,如果没有,则为“nil”
var languageCode: String?//语言环境的语言代码,或者nil如果没有
var scriptCode: String? //语言环境的脚本代码,或者nil如果没有
var variantCode: String? //语言环境的变体代码,如果没有,则为“nil”
var exemplarCharacterSet: CharacterSet? //语言环境的示例字符集,或者nil如果没有
var collationIdentifier: String? //语言环境的排序规则标识符,如果没有,则为“nil”
var collatorIdentifier: String? //区域设置的整理程序标识符
var usesMetricSystem: Bool //布尔值,如果语言环境使用公制系统,则为true
var decimalSeparator: String? //语言环境的小数分隔符。
var groupingSeparator: String? //语言环境的分组分隔符
var currencyCode: String? //语言环境的货币代码
var currencySymbol: String? //区域设置的货币符号
var quotationBeginDelimiter: String? //引用开始语言环境的分隔符
var quotationEndDelimiter: String? //语言环境的引用结束分隔符
var alternateQuotationBeginDelimiter: String?//备用引号开始区域设置的分隔符
var alternateQuotationEndDelimiter: String? //区域设置的备用引用结束分隔符

获取有关区域设置的显示信息

func localizedString(for: Calendar.Identifier) -> String? //返回指定日历的本地化字符串
func localizedString(forCollationIdentifier: String) -> String?//返回指定ICU归类标识符的本地化字符串
func localizedString(forCollatorIdentifier: String) -> String? //返回指定ICU collator标识符的本地化字符串
func localizedString(forCurrencyCode: String) -> String? //返回指定ISO 4217货币代码的本地化字符串

func localizedString(forIdentifier: String) -> String? //返回指定区域设置标识符的本地化字符串
func localizedString(forLanguageCode: String) -> String? //返回指定语言代码的本地化字符串
func localizedString(forRegionCode: String) -> String? //返回指定区域代码的本地化字符串
func localizedString(forScriptCode: String) -> String? //返回指定脚本代码的本地化字符串
func localizedString(forVariantCode: String) -> String? //返回指定变体代码的本地化字符串

用户的locale偏好

static var preferredLanguages: [String] //用户首选语言的列表

获取语言的线条和字符方向

static func characterDirection(forLanguage: String) -> Locale.LanguageDirection //返回指定语言代码的字符方向
static func lineDirection(forLanguage: String) -> Locale.LanguageDirection //返回指定语言代码的行方向
typealias Locale.LanguageDirection //标准语言方向集的别名

Locale的对比

static func != (Locale, Locale) -> Bool //返回一个布尔值,指示两个值是否不相等
static func == (Locale, Locale) -> Bool //返回一个布尔值,指示两个语言环境是否相同

描述区域设置

var description: String //语言环境的文本描述
var debugDescription: String //适合调试的语言环境的文本描述
var customMirror: Mirror //反映语言环境的镜像
var hashValue: Int //区域设置的计算哈希值

使用

let codes = Locale.isoRegionCodes
 for code in codes {
   let name =  Locale.current.localizedString(forRegionCode: code) ?? ""
   print("地区名字 -- \(name)")
 }

你可能感兴趣的:(Locale)