Как отформатировать дату в формате 09-ноя-2014 с помощью DateFormatter в iOS и Swift? - PullRequest
0 голосов
/ 17 декабря 2018

Я пытаюсь отформатировать дату в окне выбора даты.Я не могу найти формат для отображения даты в формате 09-ноя-2014 .Он всегда отображается в формате 09 ноября 2014 года.Я провел большой поиск, но не могу понять, какой из них правильный для ввода.Может кто-нибудь мне помочь?Tx заранее.

@objc func datePickerValueChanged(sender:UIDatePicker) {
    let dateFormatter = DateFormatter()
    dateFormatter.dateFormat = "dd-MM-yyyy"
    dateFormatter.dateStyle = DateFormatter.Style.medium
    dateFormatter.timeStyle = DateFormatter.Style.none
    dateOfBirthTextField.text = dateFormatter.string(from: sender.date)
}

Ответы [ 2 ]

0 голосов
/ 17 декабря 2018

Вы не должны использовать dateStyle & timeStyle, здесь вам нужен определенный формат даты, ваш код должен выглядеть так:

@objc func datePickerValueChanged(sender:UIDatePicker) {
    let dateFormatter = DateFormatter()
    dateFormatter.dateFormat = "dd-MM-yyyy"
    dateOfBirthTextField.text = dateFormatter.string(from: sender.date)
}

Надеюсь, это поможет.

0 голосов
/ 17 декабря 2018

Не устанавливайте стили.Просто установите формат.

Вы используете dateFormat или dateStyle и timeStyle.

Обратите внимание, что лучше избегать использования dateFormat для дат, которые вы хотите показатьпользователю, поскольку ваш жестко заданный формат не будет стандартным для большинства пользователей.

Также помните, что MM показывает номер месяца.Если вы хотите сокращенное название месяца, используйте MMM.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...