Я пытаюсь отформатировать свой Date()
, чтобы он выглядел как Saturday, June 12th • 5PM - 12PM
. Я смог решить большую часть этого с помощью следующего DateFormatter()
:
var date_formatter: DateFormatter {
let formatter = DateFormatter()
formatter.dateFormat = "EEEE, MMMM d • HHa - HHa"
return formatter
}
, что приводит к Saturday, June 12 • 5PM - 12PM
Проблема, с которой я столкнулся, заключается в том, чтобы понять, как добавить порядковый суффикс (например, 12 -> 12-й). Я кое-что видел на NumberFormatter()
, но не совсем уверен, как их объединить.
EDIT: закончилось создание двух форматов для 5PM - 12PM
logi c.
Это выглядит так:
var start_time_formatter: DateFormatter {
let formatter = DateFormatter()
formatter.dateFormat = "EEEE, MMMM d • HHa -"
return formatter
}
var end_time_formatter: DateFormatter {
let formatter = DateFormatter()
formatter.dateFormat = "HHa"
return formatter
}
со следующим отображением в представлении:
Text("\(self.create_event_vm.start_time, formatter: self.start_time_formatter) \(self.create_event_vm.end_time, formatter: self.end_time_formatter)")
Я понимаю, что это немного странно и может потребоваться некоторый рефакторинг, но Надеюсь получить желаемый эффект, тестирую, потом рефакторинг.