2016-04-07 3 views
0

Я использую ALAssetsLibrary, чтобы получить фотографии и отобразить их. Но я хочу, чтобы последнее изображение было спереди (что означает сортировка в соответствии с датой). Это возможно с использованием ALAssetsLibrary ?? Если не то, что может быть возможным способом достижения этого?Как получить фотографии в соответствии с датой в объекте c

ALAssetsLibrary *al = [AssetManager defaultAssetsLibrary]; 


    [al enumerateGroupsWithTypes:ALAssetsGroupAll 
         usingBlock:^(ALAssetsGroup *group, BOOL *stop) 
    { 
     [group enumerateAssetsUsingBlock:^(ALAsset *asset, NSUInteger index, BOOL *stop) 
      { 
       if (asset) 
       { 
       [self.assets addObject:asset]; 

       } 

      } 
      ]; 

     NSLog(@"first %@",self.assets); 

     self.assetsR=[[[self.assets reverseObjectEnumerator] allObjects] mutableCopy]; 
     [self.collectionData reloadData]; 
+0

См: HTTP: //stackoverflow.com/questions/9290929/how-to -get-the-latest-photo-in-iphone-library – Maulik

ответ

0

Попробуйте следующие

self.assetsR = [self.assets sortedArrayUsingComparator:^NSComparisonResult(ALAsset *first, ALAsset *second) { 

    NSDate * date1 = [first valueForProperty:ALAssetPropertyDate]; 
    NSDate * date2 = [second valueForProperty:ALAssetPropertyDate]; 

    return [date2 compare:date1]; 
}]; 
+0

может у вас объяснить это .... btw У меня может быть много изображений под картинным каталогом – Fay007

+0

На вашем коде self.assets массив имеет все оценки из библиотеки активов. Вы хотите отсортировать этот массив на основе создания даты. Класс ALAsset имеет свойство «ALAssetPropertyDate», которое содержит дату создания актива. Таким образом, вы можете использовать это свойство для сортировки активов. –

 Смежные вопросы

  • Нет связанных вопросов^_^