gpt4 book ai didi

ios - 时间显示如系统时钟

转载 作者:行者123 更新时间:2023-11-29 05:55:04 24 4
gpt4 key购买 nike

我想要像 iOS 系统时钟一样显示时间(时间以大写字母表示,一天中的一部分小而大写)。

iOS Alarm.app table cell

我知道我需要属性字符串的帮助,但我不知道如何使其与不同的时间显示格式(12 小时和 24 小时)、不同的语言和本地地点兼容。

最佳答案

要根据用户区域设置获取字符串表示形式的时间,您可以使用:

let formatter = DateFormatter()
formatter.timeStyle = DateFormatter.Style.short //Or in short formatter.timeStyle = .short
let time = formatter.string(from: Date())

例如,对于俄罗斯,它返回 23:47;对于美国,它返回 11:47 PM。

然后我们可以检查返回的时间格式是否包含用户区域设置的日期部分。如果是这样,我们为字符串中的最后两个字符设置另一种字体,这是我们的一天部分。

if let range = time.range(of: formatter.amSymbol) ?? time.range(of: formatter.pmSymbol) {
let fontSize: CGFloat = 8.0
let nsRange = NSRange(range, in: time)

let attrString = NSMutableAttributedString(string: time)
attrString.addAttributes([.font: UIFont.systemFont(ofSize: fontSize)], range: nsRange)

label.attributedText = attrString
} else {
label.text = time
}

关于ios - 时间显示如系统时钟,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55248068/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com