当相册信息可用时,按专辑对歌曲数组进行排序

时间:2014-02-06 16:54:26

标签: ios iphone objective-c sorting mpmediaquery

我使用符合特定条件的歌曲填充数组。

  NSArray *songs = [[[MPMediaQuery alloc] init] items];
  NSMutableArray *filteredSongs;
  for (int i=0; i<[songs count]; i++) {
       // filter logic here: if songs[i] match the criteria, push it filteredSongs array

  }

现在我想按MPMediaItemPropertyAlbumTitle对该数组进行排序,但如果缺少用户mp3的相册信息则避免出现问题。 (我试图找到解决问题的解决方法here

1 个答案:

答案 0 :(得分:1)

您可以使用NSComparisonResult按专辑标题排序。这应该处理nil albumTitle值并将它们推到后面。

[songs sortUsingComparator:^NSComparisonResult(id obj1, id obj2){
return [[obj2 albumTitle] compare:[obj1 albumTitle]];
}];