有没有办法在 Swift 中用英语以外的语言(尤其是一周中的一天)显示日期?
我已经有了这个DateFormatter来显示一周中的一天,但它只用英文显示:
var today = Date()
static let weekDayFormat: DateFormatter = {
let formatter = DateFormatter()
formatter.locale = Locale(identifier: "zh")
formatter.dateFormat = "E"
return formatter
}()
Run Code Online (Sandbox Code Playgroud)
如果我写Text("\(today, formatter: Self.weekDayFormat)"),它会显示“周六”。
但是,我需要它以中文显示。即使我尝试设置formatter.locale = Locale(identifier: "zh")和其他中文标识符,它也总是输出英文结果。我认为可能只是工作日的英文首字母缩写词被普遍认可,但我的客户希望它显示中文。
import SwiftUI
struct ContentView: View {
var body: some View {
Text(Formatter.weekDay.string(from: Date())).padding()
}
}
struct ContentView_Previews: PreviewProvider {
static var previews: some View {
ContentView()
}
}
extension Formatter {
static let weekDay: DateFormatter = {
let formatter = DateFormatter()
// you can use a fixed language locale
formatter.locale = Locale(identifier: "zh")
// or use the current locale
// formatter.locale = .current
// and for standalone local day of week use ccc instead of E
formatter.dateFormat = "ccc"
return formatter
}()
}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
1464 次 |
| 最近记录: |