Skip to content
This repository


Subversion checkout URL

You can clone with HTTPS or Subversion.

Download ZIP

A better UIImagePickerController

branch: master

Fetching latest commit…


Cannot retrieve the latest commit at this time

Octocat-spinner-32 Artwork
Octocat-spinner-32 GCImagePickerController
Octocat-spinner-32 Sample Project
Octocat-spinner-32 .gitignore
Octocat-spinner-32 LICENSE


This library is designed to mimick the core functionality of UIImagePickerController. It also has a few unique features not found Apple's implementation.

  • Full-screen library browser for the iPad
  • Preserves all item metadata (including location data)


This library requires the presence of the following frameworks:

  • AssetsLibrary.framework
  • QuartzCore.framework

The project must be built against the iOS 5.0 SDK or higher.

If your project is not setup to use ARC, add -fobjc-arc to all source files for this library in your target's "Compile Sources" build phase.


Add the "GCImagePickerController" folder to your project. Import the main header where you intend to use the picker.

#import "GCImagePickerController.h"

Use the picker.

// create picker
GCImagePickerController *picker = [GCImagePickerController picker];

// set custom action title and block
picker.actionTitle = @"Upload";
picker.selectedItemsBlock = ^(NSSet *URLs) {
    NSLog(@"%@", URLs);

// finish up and present
picker.finishBlock = ^{ // this is optional
    [self dismissViewControllerAnimated:YES completion:nil];
[self presentViewController:picker animated:YES completion:nil];
Something went wrong with that request. Please try again.