2

当您在 iPhone 上阅读包含“星期四晚上 9 点”之类的短语的电子邮件时,iPhone 会将其变成可点击的链接,允许您在该时间添加日历事件。

以编程方式,这是在某处使用UIDataDetectorTypeCalendarEvent标志完成的(因此出现)。

我的问题是:此检测器支持哪些时间/日期格式?这是在某处记录的吗?

4

1 回答 1

0

解决“在某处使用 UIDataDetectorTypeCalendarEvent 标志”的问题:它适用于 UITextView 视图,如果您关闭了编辑功能,如果您在设置文本值之前告诉它检测类型,我会取得更好的成功。

为了解决您的格式问题:是的..我不知道这是错误还是什么,但日期判断似乎很奇怪。对于使用完全相同格式的日期,我让它看似随机地工作。

这是我使用的格式,但就像我说的,有时它会检测到它,有时它不会。

NSDateFormatter* dateFormatter = [[NSDateFormatter alloc] init];
[dateFormatter setDateStyle:NSDateFormatterFullStyle];
[dateFormatter setTimeStyle:NSDateFormatterShortStyle];

我没有找到任何文档......可能是因为它使用了一些疯狂的启发式方法来检测任何“闻起来”像日期/时间的东西。我认为它在检测所有标准格式选项时会完美无缺,但不是。

于 2013-01-15T02:54:21.340 回答