我目前正致力于处理电视节目及其剧集的iOS应用。我有一对多关系设置(显示 - >剧集),在UITableView中,我希望它能够通过下一个播出剧集对Show实体进行排序。我似乎无法弄明白。我有两种不同的方法,我试图无济于事。
获取剧集:使用NSPredicate仅获取firstAired属性为> =今天的剧集,然后按firstAired排序。填充tableview时,我可以访问Show属性并提取所需的数据。虽然这很棒,但我最终会看到今天播出的每一集。我没有看到任何方式只能在今天之后播出第一集。
获取节目:在Show实体上使用NSDate属性(nextEpisodeDate),每当添加新剧集时以及应用程序运行时都会更新。这意味着我必须经常更新该属性(如果剧集刚刚播出,那么该属性可以每隔30分钟更改一次)当我正在加载我的tableview时,我必须找到下一集,以便在每个单元格上播放密集并减慢的tableview。
有谁知道有效的方法吗?
答案 0 :(得分:0)
我认为执行这些步骤仍然有效:
循环播放每个节目并找到下一个即将播出的剧集。您可以使用NSPredicate按节目进行填写,按firstAired排序,然后将其限制为1以获得您想要的那个。
一旦您找到该特定节目的下一个即将播出的剧集,请将其添加到NSMutableArray中,该节目将存储每个节目的所有即将播出的剧集。
一旦我们从每个节目中获得所有即将到来的剧集,请通过firstAired对NSMutableArray进行排序。
使用已排序的剧集NSMutableArray作为表格视图的数据源,然后从剧集中获取节目。
我已经建立了一个类似的应用程序,显示每个电视频道的下一个即将到来的节目,但我开发的应用程序旨在显示每天即将到来的节目,因此我有限制firstAired> =今天和firstAired的好处< =第二天。