Есть ли класс, чтобы получить приложение для просмотра изображений по умолчанию в приложении? - PullRequest
2 голосов
/ 20 сентября 2010

Я не хочу получать доступ к изображениям на iphone, я хочу отображать изображение из своего приложения, но, как и вы, смотрите фотографии в альбоме фотографий на iphone - со всеми элементами управления масштабированием и т.п. 1001 *

Возможно ли это? Я думал, что может (случайно) быть некоторый класс, такой как класс AVMediaPlayer, который бы сделал это?

Спасибо Том

1 Ответ

3 голосов
/ 20 сентября 2010

Если вы нацеливаетесь на 4.0 или более позднюю версию, вы можете использовать QLPreviewController :

Включите #import <QuickLook/QuickLook.h> в свой класс

Вот как это сделать:

Class qlookclass = NSClassFromString(@"QLPreviewController");
        if(qlookclass){
            //check if the image exists
            if([[NSFileManager defaultManager] fileExistsAtPath:@"someimage.png"]){
                id quickLookPreview = [[qlookclass alloc]init];
                [quickLookPreview setDataSource:self];
                [self presentModalViewController:quickLookPreview animated:YES];
                [quickLookPreview release];
            }
        }

Тогда где-то еще в вашем контроллере вида:

#pragma mark QLPreviewController delegate methods

- (NSInteger) numberOfPreviewItemsInPreviewController: (QLPreviewController *) controller {
    return 1;
}

- (id <QLPreviewItem>) previewController: (QLPreviewController *) controller previewItemAtIndex: (NSInteger) index {

    NSURL *imageURL =  [NSURL fileURLWithPath:@"someimage.png"];

    return imageURL;
}
...