ios - Swift DateFormatter amSymbol 不能与 dosRelativeDateFormatting 一起使用?
问题描述
我在以下代码上遇到问题:
let dateFormatter = DateFormatter()
dateFormatter.locale = locale
dateFormatter.dateStyle = .short
dateFormatter.timeStyle = .short
dateFormatter.doesRelativeDateFormatting = true
dateFormatter.amSymbol = "a" // not working if above set to true
dateFormatter.pmSymbol = "p"
let str = dateFormatter.string(from: Date())
输出 => str String "今天,下午 12:15"
如果dosRelativeDateFormatting = false,amSymbol和pmSymbol设置器工作, dosRelativeDateFormatting设置为 true,amSymbol 和 pmSymbol 设置器似乎没有任何区别。
你认为这是一个 SDK 错误还是我错过了什么?
解决方案
设置dateFormatter.dateStyle = .none
使它工作,但我想你需要以格式dateStyle
打印。因此,我使用了两个单独的 ,一个用于 the ,另一个用于.dateString
Today, 12:15 p
dateFormatters
dateStye
timeStyle
let dateFormatterForDate = DateFormatter()
dateFormatterForDate.dateStyle = .short
dateFormatterForDate.doesRelativeDateFormatting = true
let dateFormatter = DateFormatter()
dateFormatter.locale = Locale.current
dateFormatter.timeStyle = .short
dateFormatter.amSymbol = "a"
dateFormatter.pmSymbol = "p"
let str = "\(dateFormatterForDate.string(from: Date())), " + "\(dateFormatter.string(from: Date()))"
print(str)
输出:Today, 1:15 a
推荐阅读
- machine-learning - 没有 pytesseract 的 OCR
- laravel - Laravel:如何通过 GET 请求触发的控制器使用重定向传递数据?
- android - popStackImmediate() 导致非法状态异常
- android - 在 Android 中获取数据 deom Firestore
- javascript - 使用 javascript 从纯文本过滤和创建 JSON 对象
- json - AWS SES 模板 html 部分是多行
- java - 如何让扫描仪类浮动?
- vba - 如何通过 Postman 从 CompaniesHouse API 下载文档?
- r - 对矩阵的连续行执行数学运算
- ruby-on-rails - Rails:如何为选定的列做 COUNTA 的 Excel?