سؤال

I'm populating an array with songs that match a specific criteria.

  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

  }

Now I'd like to sort that array by MPMediaItemPropertyAlbumTitle, but avoiding problems if the Album info of the user's mp3 is missing. (I'm trying to find a workaround for the problem solved here)

هل كانت مفيدة؟

المحلول

You can use the NSComparisonResult to sort by album title. This should handle nil albumTitle values and push them to the back.

[songs sortUsingComparator:^NSComparisonResult(id obj1, id obj2){
return [[obj2 albumTitle] compare:[obj1 albumTitle]];
}];
مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top