Поместите NavigationController в наш MainWindow.xib, с первым контроллером, указывающим на пользовательский CameraController (атрибут класса).Не указывайте XIB.
Сохраните ссылку на этот навигационный контроллер с IBOutlet в ваш appDelegate, затем вызовите в laucnch:
- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions {
[self.window addSubview:navigationController.view];
[self.window makeKeyAndVisible];
return YES;
}
Создайте еще один xib для наложения с его контроллеромдавайте назовем его OverlayViewController.
Затем в этот CameraViewController:
.h
@interface CameraController : UIViewController {
UIImagePickerController* __picker;
OverlayViewController* __overlay;
}
@property (nonatomic, retain) UIImagePickerController* picker;
@property (nonatomic, retain) OverlayViewController* overlay;
.m
- (void) viewDidLoad {
self.picker = [[UIImagePickerController alloc] init];
self.picker.sourceType = UIImagePickerControllerSourceTypeCamera;
self.picker.cameraDevice = UIImagePickerControllerCameraDeviceFront;
self.picker.showsCameraControls = NO;
self.picker.navigationBarHidden = YES;
self.picker.wantsFullScreenLayout = YES;
// Insert the overlay
self.overlay = [[OverlayViewController alloc] initWithNibName:@"Overlay" bundle:nil];
self.overlay.pickerRef = self.picker;
self.picker.cameraOverlayView = self.overlay.view;
[self presentModalViewController:self.picker animated:NO];
}