Удалить isLeapMonth: false - PullRequest
       17

Удалить isLeapMonth: false

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

следующий код должен возвращать количество дней с момента создания ячейки, что он делает, но также возвращает isLeapMonth: false.Это почему?Как я могу удалить это?

let cell = super.tableView(tableView, cellForRowAt: indexPath)
cell.textLabel?.text = itemArray[indexPath.row].title
let startDate = itemArray[indexPath.row].dateCreated
let currentDate = Date()
let components = Set<Calendar.Component>([.day])
let differenceOfDate = Calendar.current.dateComponents(components, from: startDate!, to: currentDate)
cell.detailTextLabel?.text = "\(differenceOfDate)"
return cell

image

Ответы [ 2 ]

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

Поскольку вам нужно только количество дней, вы должны извлечь только значение day из полученного DateComponents и напечатать это число по вашему желанию.

cell.detailTextLabel?.text = "\(differenceOfDate.day!) days"

Обратите внимание, что использование ! здесь безопасно, потому что вы специально запросили компонент .day.

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

Это потому, что differenceOfDate имеет тип DateComponents, и это не возвращает вам число.Если вам нужно узнать количество дней, вы можете получить это число, получив day свойство DateComponents

Calendar.current.dateComponents(components, from: startDate!, to: currentDate).day!
...