|
8 | 8 |
|
9 | 9 | #import "BFRImageContainerViewController.h"
|
10 | 10 |
|
| 11 | +#import <Photos/Photos.h> |
11 | 12 | #import <DACircularProgress/DACircularProgressView.h>
|
12 | 13 | #import "AFNetworking.h"
|
13 | 14 |
|
@@ -41,9 +42,11 @@ - (void)viewDidLoad {
|
41 | 42 | self.progressView = [self createProgressView];
|
42 | 43 | [self.view addSubview:self.progressView];
|
43 | 44 | [self retrieveImageFromURL];
|
44 |
| - } else { |
| 45 | + } else if ([self.imgSrc isKindOfClass:[UIImage class]]) { |
45 | 46 | self.imgLoaded = (UIImage *)self.imgSrc;
|
46 | 47 | [self addImageToScrollView];
|
| 48 | + } else if ([self.imgSrc isKindOfClass:[PHAsset class]]){ |
| 49 | + [self retrieveImageFromAsset]; |
47 | 50 | }
|
48 | 51 |
|
49 | 52 | //Animator - used to snap the image back to the center when done dragging
|
@@ -278,6 +281,18 @@ - (void)dismissUI {
|
278 | 281 | [[NSNotificationCenter defaultCenter] postNotificationName:@"DismissUI" object:nil];
|
279 | 282 | }
|
280 | 283 |
|
| 284 | +- (void)retrieveImageFromAsset { |
| 285 | + if (![self.imgSrc isKindOfClass:[PHAsset class]]) { |
| 286 | + return; |
| 287 | + } |
| 288 | + |
| 289 | + PHImageRequestOptions *reqOptions = [PHImageRequestOptions new]; |
| 290 | + reqOptions.synchronous = YES; |
| 291 | + [[PHImageManager defaultManager] requestImageDataForAsset:self.imgSrc options:reqOptions resultHandler:^(NSData *imageData, NSString *dataUTI, UIImageOrientation orientation, NSDictionary *info) { |
| 292 | + self.imgLoaded = [UIImage imageWithData:imageData]; |
| 293 | + [self addImageToScrollView]; |
| 294 | + }]; |
| 295 | +} |
281 | 296 | - (void)retrieveImageFromURL {
|
282 | 297 | NSURLRequest *request = [[NSURLRequest alloc] initWithURL:(NSURL *)self.imgSrc cachePolicy:NSURLRequestReturnCacheDataElseLoad timeoutInterval:0];
|
283 | 298 |
|
|
0 commit comments