UIView中的UIImagePickerController

时间:2011-06-26 18:41:14

标签: iphone ios uiview uiimagepickercontroller

我有一个iOS项目/测试我正在执行我正在调用UIImagePickerContoller,其源设置为iPhone相机。

我想将这个“实时”相机加载到我界面中较小的UIView框中。我正在让相机加载并显示,但不是在UIView中。这是我正在使用的代码:

- (void)viewDidAppear:(BOOL)animated {

    UIImagePickerController *scope = [[UIImagePickerController alloc] init];

    [scope setSourceType:UIImagePickerControllerSourceTypeCamera];
    [scope setShowsCameraControls:NO];
    [scope setEditing:NO];
    [scope setNavigationBarHidden:YES];

    [cameraDisplayView addSubview:scope.view];
    [scope viewWillAppear:YES];

    [super viewDidAppear:YES];
}

2 个答案:

答案 0 :(得分:0)

您需要使用cameraOverlayView属性在摄像机视图的顶部绘制其他视图,而不是相反。

请参阅UIImagePickerController的文档。您无法强制摄像机选择控制器进入UIView,您必须在摄像机选择器控制器上绘制。

(然后你可以设置其中一个覆盖视图到clearColor以获得一个到摄像机控制器的窗口。)

答案 1 :(得分:-1)

将imagepickercontroller帧大小设置为父视图,如下所示:

scope.view.frame=CGRectMake(0, 0, cameraDisplayView.frame.size.width, cameraDisplayView.frame.size.height);

然后将imagepickercontroller添加到视图中。

[cameraDisplayView addSubview:scope.view];