记一个swiftUI开发的中跨年日期错乱的小坑。没想到这样的坑也让我遇到了,果然新手入门就是一个不停地踩坑的过程。如果你在做日期相关的应用也遇到相同的日期跨年的问题,你就来对地方了。
兔嘟清单
临近跨年在调试应用“兔嘟清单”的时候出现了一个让人感觉到无语的bug,2023年的最后一天神奇地变成了2024-12-31,而下一天又准确无误地变成了2024-01-01 。并且这个错误不仅发生在日历页面,也发生在选择任务日期的页面,曾一度让我以为获取日历的算法出现了问题。
兔嘟清单
对着获取月历的代码复盘了一遍又一遍,都没发现错误,然后搜索在某乎上某大神“程序新视界”的回答找到了一段有点相似的解释。
阿里巴巴的java开发手册中有说明:日期格式化传入的pattern中大写的YYYY代表的是周所在的年,而不是天所在的年。小写的yyyy代表的才是当天所在的年。
兔嘟清单
虽然我用的是swift语言,但大约感觉计算机原理是相通的,于是就在格式化的中的“YYYY”改为“yyyy”,运行,问题竟然就完美解决了。原来Java的开发手册也能解决我在swiftUI开发中遇到的问题。
慢慢踩坑,慢慢学习,慢慢进步吧~