设置背景图像/视图以实时显示相机视图?
答
是的,绝对有可能。您可以在UIView中嵌入实时摄像头,您可以将它放置在任何你喜欢的位置。
开始通过阅读这里:AVFoundation Reference - 这是你的框架
,你正在寻找特定类是AVCaptureVideoPreviewLayer
其中齐声用AVCaptureSession
的作品,这是一个示例项目覆盖您需要的一切:AVCam
答
我认为你最好的选择是抓住并理解这个apple sample code, called AVCam。您将在代码中看到如何创建AVCaptureVideoPreviewLayer。你会将它作为你将用作“背景”的UIView的子层插入。
一旦你得到了这个工作,那UIView就像视图层次结构的任何其他部分一样。你可以把它当作背景UIImageView来使用(虽然它会消耗更多的电池电量)。
答
进口:
#import <AVFoundation/AVFoundation.h>
要相机视图添加到控制器的视图在viewDidLoad
添加以下代码:
AVCaptureSession *session = [[AVCaptureSession alloc] init];
session.sessionPreset = AVCaptureSessionPresetHigh;
AVCaptureDevice *device = [AVCaptureDevice defaultDeviceWithMediaType:AVMediaTypeVideo];
NSError *error = nil;
AVCaptureDeviceInput *input = [AVCaptureDeviceInput deviceInputWithDevice:device error:&error];
[session addInput:input];
AVCaptureVideoPreviewLayer *newCaptureVideoPreviewLayer = [[AVCaptureVideoPreviewLayer alloc] initWithSession:session];
newCaptureVideoPreviewLayer.frame = self.view.bounds;
[self.view.layer addSublayer:newCaptureVideoPreviewLayer];
[session startRunning];