保存 UIImages 以在我的应用程序中显示它们的最佳方式?

Best way to save UIImages for displaying them in my App?

我正在开发一款每天为用户拍照的应用程序。一切正常,图像被保存到设备中。我目前可以从标准照片应用程序访问它们。

在应用程序编程的下一步中,我喜欢在我的应用程序中构建一个画廊。我在考虑 iCarousel,但我还不确定。

现在我想知道哪种保存图像的最佳方式用户自己制作?用户应该能够通过使用设备上的标准照片应用程序 在我的应用程序的图库中访问图片。我的目标是 iOS 8.1.

目前我保存的照片是这样的:

- (void)takePhoto{
    NSLog(@"CameraController: takePhoto()");

    AVCaptureConnection *videoConnection = nil;

    for(AVCaptureConnection *connection in stillImageOutput.connections){
        for(AVCaptureInputPort *port in [connection inputPorts]){
            if([[port mediaType] isEqual:AVMediaTypeVideo]){
                videoConnection = connection;
                break;
            }
        }
        if(videoConnection){
            break;
        }
    }
    [stillImageOutput captureStillImageAsynchronouslyFromConnection:videoConnection completionHandler:^(CMSampleBufferRef imageDataSampleBuffer, NSError *error) {
        if(imageDataSampleBuffer != NULL) { //this code gets executed if a photo is taken
            NSData *imageData = [AVCaptureStillImageOutput jpegStillImageNSDataRepresentation:imageDataSampleBuffer];
            UIImage *combined = [UIImage imageWithData:imageData];
            //....            
            dispatch_async(dispatch_get_global_queue(DISPATCH_QUEUE_PRIORITY_DEFAULT, 0), ^{
                    UIImageWriteToSavedPhotosAlbum(combined, nil, nil, nil);
                    NSLog(@"CameraController: Image saved");
                });
            }
        }];
    }

您应该阅读(并使用)PhotoKit

我现在正在使用iCarousel。我使用 NSSearchPathForDirectoriesInDomains(NSDocumentDirectory,NSUserDomainMask, YES); 为我喜欢保存并显示在 iCarousel 中的图片生成路径。