使用NSDate搜索NSArray字符串

时间:2010-11-07 22:21:25

标签: objective-c ios4 nsarray nsdate

很难让标题正确,因为有太多要说的。 我得到了这个NSArray(它的一部分): 星期一,06:00,Radioshow早上,星期一,10:00,午餐电台,14:00,下午电台等。 NSArray来自app中的plist。

我需要构建(并且失败)是一个搜索功能,它向我显示具有以下搜索值的正确程序: searchDay和searchTime

这两个值均来自NSDate。 我现在一直在谷歌搜索大约一小时,并没有提出任何有用的东西,所以我最后的希望代表stackoverflow向我展示我所缺少的东西。

我一直在讨论dateFromString,比较,timeIntervalSinceNow但由于某种原因未能实现我将要做的事情。

非常适合任何帮助。

TIA 的Mattias

2 个答案:

答案 0 :(得分:1)

您应该在NSArray中使用NSDray NSDray对象而不是各种对象类型:

NSDictionary *morningShow = [NSDictionary dictionaryWithObjectsAndKeys:@"Mon",@"day","10:00",@"time","morning",@"name",nil];

然后将其添加到您的数组中。然后,当你搜索时,你有一个统一的数据结构来搜索。

答案 1 :(得分:0)

我想我已经解决了。 但我必须说我对愚蠢的回答很感兴趣。

我现在这样做的方法是从数组中读取值(NSString),将它们转换为NSDate对象,并将它们与timeIntervalSinceDate进行比较。

通过这个我可以弄清楚currentTime是否在数组中两次之间,这样我知道什么是show。我刚刚提出了解决方案,基本代码正在运行,但整个代码还没有完成,只是在纸上/在我的脑海里。

但感觉就像一个有点难看的代码......很多做小事。 但我会事先起诉这个,如果它看起来仍然效率低下并且丑陋,我会考虑其他解决方案。