Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/ios/107.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Ios 如何获取照片库图像计数_Ios_Objective C_Uiimagepickercontroller_Photolibrary - Fatal编程技术网

Ios 如何获取照片库图像计数

Ios 如何获取照片库图像计数,ios,objective-c,uiimagepickercontroller,photolibrary,Ios,Objective C,Uiimagepickercontroller,Photolibrary,从Photolibrary提取图像我们使用UIImagePickerController和UIImagePickerController源类型Photolibrary进入Photolibrary并获取图像,现在我的问题是如何获取保存在我的Photolibrary中的图像计数 允许我在应用程序中显示图像计数 是允许您使用以下方法获取所有图像:- 导入照片框架 #import <Photos/Photos.h> -(void)getAllPhotosFromCamera { imag

从Photolibrary提取图像我们使用UIImagePickerController和UIImagePickerController源类型Photolibrary进入Photolibrary并获取图像,现在我的问题是如何获取保存在我的Photolibrary中的图像计数


允许我在应用程序中显示图像计数

是允许您使用以下方法获取所有图像:- 导入照片框架

#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];
}
#import <Photos/Photos.h>
#导入
-(无效)从照相机获取所有照片
{
imageArray=[[NSArray alloc]init];
mutableArray=[[NSMutableArray alloc]init];
PHImageRequestOptions*requestOptions=[[PHImageRequestOptions alloc]init];
requestOptions.resizeMode=PhImageRequestOptions ResizeModeFast;
requestOptions.deliveryMode=PhImageRequestOptions DeliveryModeHighQualityFormat;
requestOptions.synchronous=true;
PHFetchResult*result=[PHAsset FETCHASSETSWITMEDIATYPE:PHASSETMEDIATYPE图像选项:nil];
NSLog(@“%d”,(int)result.count);
PHImageManager*管理器=[PHImageManager默认管理器];
NSMutableArray*图像=[NSMutableArray阵列容量:[结果计数]];
//资源包含相集对象。
__块UIImage*ima;
用于(相位集*结果中的资产)
{
//对资产做些什么
[manager requestImageForAsset:资产
targetSize:PHImageManagerMaximumSize
contentMode:PHImageContentModeDefault
选项:请求选项
resultHandler:^void(UIImage*图像,NSDictionary*信息)
{
ima=图像;
[图像添加对象:ima];
}];
}
imageArray=[图像复制];
[[u cView reloadData];
}

如果您想获得计数,那么通过照片框架,您可以获得如下计数

PHFetchResult *allPhotosResult = [PHAsset fetchAssetsWithMediaType:PHAssetMediaTypeImage options:nil];
NSLog(@"count of All Photos from Moments in iOS8, or Camera Roll - %lu",(unsigned long)allPhotosResult.count);
也不要忘记导入照片框架

#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];
}
#import <Photos/Photos.h>
#导入

在这里您可以获得所有图像计数。它还包括所有相册和相机卷图像

__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);