Swift Firebase Форматирование Дата не работает правильно - PullRequest
0 голосов
/ 02 января 2019

Я форматирую метку времени из базы данных, которая разбивает время на годы, месяцы, дни, часы и минуты. Я использую другой форматер даты, который работает, где он просто разбивает время на точное время, которое составляет всего лишь часы и минуты. Просто попытка обратиться за помощью, чтобы понять, почему это не так, подробный форматировщик даты не работает

Подробный форматер

extension Date {

func getElapsedInterval() -> String {

    let interval = Calendar.current.dateComponents([.year, .month, .day], from: self, to: Date())

    if let year = interval.year, year > 0 {
        return year == 1 ? "\(year)" + " " + "year" :
            "\(year)" + " " + "years"
    } else if let month = interval.month, month > 0 {
        return month == 1 ? "\(month)" + " " + "month" :
            "\(month)" + " " + "months"
    } else if let day =  interval.day, day > 0 {
        return day == 1 ? "\(day)" + " " + "day" :
            "\(day)" + " " + "days"
    } else if let hour = interval.hour, hour > 0 {h
        return hour == 1 ? "\(hour)" + " " + "hour" :
            "\(hour)" + " " + "hours"
    } else if let minute =  interval.minute, minute > 0 {
        return minute == 1 ? "\(minute)" + " " + "minute" :
            "\(minute)" + " " + "minutes"
    }

    return "a moment ago"
  }
}

Форматер рабочей даты

if let seconds = group?.timestamp {

        let timestampDate = NSDate(timeIntervalSince1970: TimeInterval(seconds))
        let dateFormatter = DateFormatter()
        dateFormatter.dateFormat = "h:mm a"
        self.messageTime.text = dateFormatter.string(from: timestampDate as Date)
    }

Не работает правильно Форматер даты

if let seconds = group?.timestamp?.doubleValue {
        let timestampDate = Date(timeIntervalSince1970: seconds)
        self.messageTime.text = timestampDate.getElapsedInterval()
    }

Не работающий форматер даты, который использует подробный форматер даты, просто продолжает печатать на этикетке «мгновение назад», хотя я тестирую те же данные.

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