1

我需要对不同的班级进行搜索,歌曲是歌曲,另一个是专辑。蚀刻其中之一是用他的财产(名称,网址等)代表歌曲/专辑。现在我正在使用此代码通过搜索名称属性从我的歌曲数组中搜索歌曲,我还需要能够在专辑数组中搜索,也在名称属性中。

-(void)filterContentForSearchText:(NSString*)searchText scope:(NSString*)scope {

    // Update the filtered array based on the search text and scope.
    // Remove all objects from the filtered search array
    [self.filteredSongArray removeAllObjects];

    // Filter the array using NSPredicate
    NSPredicate *predicate = [NSPredicate predicateWithFormat:@"SELF._songName contains[cd] %@",searchText];

    filteredSongArray = [NSMutableArray arrayWithArray:[_myDataMgr.songArray filteredArrayUsingPredicate:predicate]];
}

所以我的问题是如何告诉谓词也在 AlbumArray 中查找,谢谢大家。

更新: 我在 AlbumArray 上运行了另一个谓词,得到结果后,我添加了两个数组。谢谢你的重播很有帮助!

4

1 回答 1

1

您可以像这样过滤数组内容:

NSPredicate *predicate = [NSPredicate predicateWithFormat:@"(songName CONTAINS[cd] %@)", searchText];
[self.filteredSongArray addObjectsFromArray [_myDataMgr.songArray filteredArrayUsingPredicate:predicate]];

无需在谓词中添加 SELF ....

希望这可以帮助...!!!

于 2012-12-31T09:42:00.603 回答