如何检测星期几和时间,然后根据当前日期和时间在tableview中显示数据?
问题描述:
我有一个时间表的数据列表。每个项目都有它发生的时间。我想要检测当前的日期和时间,然后显示在此期间可用的项目。我真正知道的是如何获得今天的日期和时间,并且我需要创建一种方法来查看我的数据中当前正在“正在播放”的内容。有什么建议么?如何检测星期几和时间,然后根据当前日期和时间在tableview中显示数据?
答
通过假设你的日程安排项目被存储在一个NSArray
称为scheduleItems
,这些项目有一个date
属性,你可以用谓词进行筛选:
NSPredicate *predicate = [NSPredicate predicateWithFormat:@"date == %@",
[NSDate date]];
NSArray *todaysItems = [scheduleItems filteredArrayUsingPredicate:predicate];
的问题是,这会给你一切项目的日期恰好是现在。您可能想要比较某个范围中的日期:
NSDate *today = ...;
NSDate *tomorrow = ...;
NSPredicate *predicate = [NSPredicate predicateWithFormat:@"date BETWEEN %@",
[NSArray arrayWithObjects:today, tomorrow,nil]];
NSArray *todaysItems = [scheduleItems fileteredArrayUsingPredicate:predicate];
注意:这未经测试。
OP说:'我如何检测星期几和时间'和OP说:'我真正知道的是如何得到今天的日期和时间'? – 2010-03-04 19:25:15