diff options
| author | Teddy Wing | 2012-04-24 19:08:20 -0400 |
|---|---|---|
| committer | Teddy Wing | 2012-04-24 19:08:20 -0400 |
| commit | 97c2c473234e9fced138a09aec80a416f0400c04 (patch) | |
| tree | a24c0143c9efa6ffa05dfebfdfab003ed1ab25ca | |
| parent | 3fc6511769e473f09f17956f23c307d43b613728 (diff) | |
| download | Video-Tuneup-97c2c473234e9fced138a09aec80a416f0400c04.tar.bz2 | |
Video library popover works.
| -rw-r--r-- | Video Tuneup/Classes/AssetsViewController.h | 8 | ||||
| -rw-r--r-- | Video Tuneup/Classes/AssetsViewController.m | 37 | ||||
| -rw-r--r-- | Video Tuneup/ViewController.m | 20 |
3 files changed, 43 insertions, 22 deletions
diff --git a/Video Tuneup/Classes/AssetsViewController.h b/Video Tuneup/Classes/AssetsViewController.h index 6b13ae7..ec64d3a 100644 --- a/Video Tuneup/Classes/AssetsViewController.h +++ b/Video Tuneup/Classes/AssetsViewController.h @@ -7,7 +7,13 @@ // #import <UIKit/UIKit.h> +#import <AssetsLibrary/AssetsLibrary.h> -@interface AssetsViewController : UITableViewController +@interface AssetsViewController : UITableViewController { + NSMutableArray *assets; +} + +@property (nonatomic, retain) UIActivityIndicatorView *activity; +@property (nonatomic, retain) ALAssetsLibrary *library; @end diff --git a/Video Tuneup/Classes/AssetsViewController.m b/Video Tuneup/Classes/AssetsViewController.m index b3df331..c948a0e 100644 --- a/Video Tuneup/Classes/AssetsViewController.m +++ b/Video Tuneup/Classes/AssetsViewController.m @@ -10,6 +10,8 @@ @implementation AssetsViewController +@synthesize activity, library; + - (id)initWithStyle:(UITableViewStyle)style { self = [super initWithStyle:style]; @@ -32,6 +34,29 @@ - (void)viewDidLoad { [super viewDidLoad]; + + void (^assetEnumerator)(ALAsset *, NSUInteger, BOOL *) = ^(ALAsset *result, NSUInteger index, BOOL *stop) { + if(result != NULL) { + NSLog(@"See Asset: %@", result); + [assets addObject:result]; + } + }; + void (^assetGroupEnumerator)(ALAssetsGroup *, BOOL *) = ^(ALAssetsGroup *group, BOOL *stop) { + if(group != nil) { + [group setAssetsFilter:[ALAssetsFilter allVideos]]; + [group enumerateAssetsUsingBlock:assetEnumerator]; + } + [self.tableView reloadData]; + [self.activity stopAnimating]; + [self.activity setHidden:YES]; + }; + assets = [[NSMutableArray alloc] init]; + library = [[ALAssetsLibrary alloc] init]; + [library enumerateGroupsWithTypes:ALAssetsGroupAll + usingBlock:assetGroupEnumerator + failureBlock: ^(NSError *error) { + NSLog(@"Failure"); + }]; // Uncomment the following line to preserve selection between presentations. // self.clearsSelectionOnViewWillAppear = NO; @@ -77,16 +102,12 @@ - (NSInteger)numberOfSectionsInTableView:(UITableView *)tableView { -#warning Potentially incomplete method implementation. - // Return the number of sections. - return 0; + return 1; } - (NSInteger)tableView:(UITableView *)tableView numberOfRowsInSection:(NSInteger)section { -#warning Incomplete method implementation. - // Return the number of rows in the section. - return 0; + return [assets count]; } - (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath @@ -98,7 +119,9 @@ cell = [[UITableViewCell alloc] initWithStyle:UITableViewCellStyleDefault reuseIdentifier:CellIdentifier]; } - // Configure the cell... + ALAsset *asset = [assets objectAtIndex:indexPath.row]; + [cell.imageView setImage:[UIImage imageWithCGImage:[asset thumbnail]]]; + [cell.textLabel setText:[NSString stringWithFormat:@"Test %d", indexPath.row+1]]; return cell; } diff --git a/Video Tuneup/ViewController.m b/Video Tuneup/ViewController.m index 972bcce..3bc41a2 100644 --- a/Video Tuneup/ViewController.m +++ b/Video Tuneup/ViewController.m @@ -9,6 +9,7 @@ #import "ViewController.h" #import "PlayerView.h" #import "SimpleEditor.h" +#import "AssetsViewController.h" // Define this constant for the key-value observation context. static const NSString *ItemStatusContext; @@ -404,24 +405,15 @@ mScrubber, mediaLibraryButton, mediaLibraryPopover; // http://stackoverflow.com/questions/2469523/mpmediapickercontroller-for-selecting-video-files#answer-3212470 UIButton *theButton = (UIButton *)sender; - UIImagePickerController* picker = [[UIImagePickerController alloc] init]; - picker.delegate = self; - picker.sourceType = UIImagePickerControllerSourceTypeSavedPhotosAlbum; - picker.mediaTypes = [UIImagePickerController availableMediaTypesForSourceType:picker.sourceType]; - mediaLibraryPopover = [[UIPopoverController alloc] initWithContentViewController:picker]; + + AssetsViewController *avc = [[AssetsViewController alloc] initWithStyle:UITableViewStylePlain]; + + mediaLibraryPopover = [[UIPopoverController alloc] initWithContentViewController:avc]; +// [mediaLibraryPopover setPopoverContentSize:<#(CGSize)#>// Change size of popover so that it doesn't take up the whole height [self.mediaLibraryPopover presentPopoverFromRect:[theButton bounds] inView:theButton permittedArrowDirections:UIPopoverArrowDirectionAny animated:YES]; } -- (void)imagePickerController:(UIImagePickerController *)picker didFinishPickingMediaWithInfo:(NSDictionary *)info { - [mediaLibraryPopover dismissPopoverAnimated:YES]; - - NSLog(@"MEDIA URL:"); - NSLog(@"%@", [info objectForKey:UIImagePickerControllerMediaURL]); - NSLog(@"MEDIA REFERENCE URL:"); - NSLog(@"%@", [info objectForKey:UIImagePickerControllerReferenceURL]); -} - #pragma mark - View controller boilerplate - (void)didReceiveMemoryWarning { |
