创建和管理每日目标列表的最佳实践

时间:2015-11-24 19:10:36

标签: ios date timezone

创建和管理每日目标列表的最佳做法是什么。 我想每天都有一个实体(称为dailyGoal)。每当用户打开应用程序时,应用程序首先查看是否已创建此日期的实体,如果该实体不存在则创建新实体。 我在时区方面遇到了一些问题。 用户在纽约创建dailyGoal实体,并在同一天前往旧金山(反之亦然)。我不能只使用午夜日期来获取现有实体,因为午夜日期在这种情况下是不同的。我尝试使用时间间隔,但这也不是一个好的解决方案。

谢谢!

Matic的

2 个答案:

答案 0 :(得分:0)

该实体可以完全基于年/月/日。每当用户打开应用程序时,您都会从本地日期/时间中提取年/月/日。如果存在年/月/日的实体,则使用该实体,否则您为年/月/日创建新实体。

在实践中,这意味着该实体将在从纽约到旧金山的一日游中持续27小时,并在从旧金山到纽约的一日游中持续21小时。但这符合用户的感知 - 这一天似乎是从美国东部到西部的缓慢行进,因为你获得了3个小时,而当你从西方旅行到在美国东部以西,因为你失去了3个小时。

答案 1 :(得分:0)

我发现通过将每日目标日期规范化为正午而不是午夜,我可以轻松解决时区问题。这样,无论时区如何,UTC日期始终是正确的。