在 SwiftUI 中使用 RelativeDateTimeFormatter 的奇怪结果

问题描述

因此,我在 SwiftUI 中使用 RelativeDateTimeFormatter 来显示基于日期和相对日期的本地化字符串。我正在寻找的是例如“明天”、“昨天”、“4 小时后”等。我可以完成这项工作,但我认为结果有点奇怪。

一个例子:
当 startDate 设置为星期三早上 7 点并且我今天(星期一,下午 2 点左右)运行下面的代码时,结果是“明天”。我不知道 RelativeDateTimeFormatter 是如何工作的,但我希望它返回类似“后天”或类似的内容

private static var relativeDateFormatter: RelativeDateTimeFormatter = {
        let formatter = RelativeDateTimeFormatter()
        formatter.dateTimeStyle = .named
        return formatter
    }()
Text(EventRow.relativeDateFormatter.localizedString(for: event.startDate,relativeto: Date()).uppercased())

一个示例:如果我将 startDate 设置为星期五上午 8 点并在今天(再次在星期一下午 2 点左右)运行代码,它将返回“3 天后”。不是更像是4天吗?

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)