iPhone SDK: используйте UIView поверх дисплея камеры - PullRequest
1 голос
/ 03 июля 2010

Как я могу иметь UIView поверх вида, который содержит живой вид с камеры?

1 Ответ

1 голос
/ 22 марта 2011

Поместите 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];
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...