在Storyboard中使用CameraOverlayView
问题描述:
我正在尝试使用CameraOverLayView
和UIImagePickerController
在XCode中使用Storyboard。
在故事板中,CameraViewController
分段为ImagePickerController
,其中有CameraOverlayView
。在Storyboard中使用CameraOverlayView
在我CameraViewController
实现文件中,我有这样的代码:
-(void)prepareForSegue:(UIStoryboardSegue *)segue sender:(id)sender{
UIImagePickerController *controller = [segue destinationViewController];
controller.sourceType = UIImagePickerControllerSourceTypeCamera;
controller.delegate = self;
//Here's where I need to assign the CameraOverlayView
//the view defined in my Storyboard
}
编程,我可以创造一个新的CameraOverlayView
实例,并将其分配给controller.cameraOverlayView
,但有可能使用在故事板作为创建的视图部分ImagePickerController
现场,如果是的话,怎么样?
答
不幸的是,UIImagePickerController
没有cameraOverlayView
的插座。你最好的选择是创建你自己的插座,引用你想用作叠加层的视图,并将其分配给destinationViewController
的prepareForSegue:
。
或者,您可以将UIImagePickerController
嵌入到容器视图中,只需手动将覆盖视图放在容器视图顶部即可。效果将是相同的,你可以更好地控制行为。
答
你试过了吗?
[self.storyboard instantiateViewControllerWithIdentifier:@"YourOverlayView"];
然后将它分配给UIImagePickerController实例?
我觉得这样你仍然可以享受编辑故事板的好处。