2016-09-02 1 views
2

En extrayant l'image de Photolibrary, nous utilisons le UIImagePickerViewController et UIImagePickerControllerSourceTypePhotoLibrary pour aller dans photolibrary et obtenir une image, Maintenant voici ma question Comment puis-je obtenir le nombre d'images qui sont enregistrées dans mon photoLibary.Comment obtenir la photo Bibliothèque Nombre d'images

Est-ce qu'il me permet d'obtenir le nombre d'images à afficher dans mon application.

Répondre

6

Oui, il est permis, vous pouvez récupérer toutes les images en utilisant ci-dessous la méthode: - importation Photos Cadre

#import <Photos/Photos.h> 


-(void)getAllPhotosFromCamera 
{ 
imageArray=[[NSArray alloc] init]; 
mutableArray =[[NSMutableArray alloc]init]; 

PHImageRequestOptions *requestOptions = [[PHImageRequestOptions alloc] init]; 
requestOptions.resizeMode = PHImageRequestOptionsResizeModeFast; 
requestOptions.deliveryMode = PHImageRequestOptionsDeliveryModeHighQualityFormat; 
requestOptions.synchronous = true; 
PHFetchResult *result = [PHAsset fetchAssetsWithMediaType:PHAssetMediaTypeImage options:nil]; 

NSLog(@"%d",(int)result.count); 

PHImageManager *manager = [PHImageManager defaultManager]; 
NSMutableArray *images = [NSMutableArray arrayWithCapacity:[result count]]; 

// assets contains PHAsset objects. 

__block UIImage *ima; 
for (PHAsset *asset in result) 
{ 
    // Do something with the asset 

    [manager requestImageForAsset:asset 
         targetSize:PHImageManagerMaximumSize 
         contentMode:PHImageContentModeDefault 
          options:requestOptions 
        resultHandler:^void(UIImage *image, NSDictionary *info) 
        { 
         ima = image; 

         [images addObject:ima]; 
        }]; 
} 

imageArray = [images copy]; 
[_cView reloadData]; 
} 
1

Si vous voulez obtenir le nombre puis avec le Cadre de photos, vous pouvez obtenir le nombre comme celui-ci

PHFetchResult *allPhotosResult = [PHAsset fetchAssetsWithMediaType:PHAssetMediaTypeImage options:nil]; 
NSLog(@"count of All Photos from Moments in iOS8, or Camera Roll - %lu",(unsigned long)allPhotosResult.count); 

aussi ne pas oublier d'importer des photos cadre

#import <Photos/Photos.h> 
0

Ici, vous pouvez obtenir toutes les images. Il inclut également toutes les images de l'album et de la pellicule.

__block NSInteger intTotalCount=0; 
// Get all Album list... 
PHFetchResult *userAlbums = [PHAssetCollection fetchAssetCollectionsWithType:PHAssetCollectionTypeAlbum subtype:PHAssetCollectionSubtypeAny options:nil]; 
[userAlbums enumerateObjectsUsingBlock:^(PHAssetCollection *collection, NSUInteger idx1, BOOL *stop) { 
    PHFetchResult *assetsFetchResult = [PHAsset fetchAssetsInAssetCollection:collection options:nil]; 
    intTotalCount+=assetsFetchResult.count; 
}]; 

// Get image count from Camera Roll 
PHFetchOptions *allPhotosOptions = [PHFetchOptions new]; 
allPhotosOptions.predicate = [NSPredicate predicateWithFormat:@"mediaType == %d ",PHAssetMediaTypeImage]; 
PHFetchResult *allPhotosResult = [PHAsset fetchAssetsWithOptions:allPhotosOptions]; 
intTotalCount+=allPhotosResult.count; 

NSLog(@"%d",intTotalCount);