:
@synthesize vImagePreview;
-(void)viewDidLoad {
[super viewDidLoad];
}
- (void)viewDidUnLoad {
[super viewDidLoad];
// Do any additional setup after loading the view, typically from a nib.
vImagePreview = nil;
}
- (void)didReceiveMemoryWarning {
[super didReceiveMemoryWarning];
// Dispose of any resources that can be recreated.
}
- (void)viewDidAppear:(BOOL)animated
{
[super viewDidAppear:animated];
AVCaptureSession *session = [[AVCaptureSession alloc] init];
session.sessionPreset = AVCaptureSessionPresetMedium;
CALayer *viewLayer = self.vImagePreview.layer;
NSLog(@"viewLayer = %@", viewLayer);
AVCaptureVideoPreviewLayer *captureVideoPreviewLayer = [[AVCaptureVideoPreviewLayer alloc] initWithSession:session];
captureVideoPreviewLayer.frame = self.vImagePreview.bounds;
[self.vImagePreview.layer addSublayer:captureVideoPreviewLayer];
AVCaptureDevice *device = [AVCaptureDevice defaultDeviceWithMediaType:AVMediaTypeVideo];
NSError *error = nil;
AVCaptureDeviceInput *input = [AVCaptureDeviceInput deviceInputWithDevice:device error:&error];
if (!input) {
// Handle the error appropriately.
NSLog(@"ERROR: trying to open camera: %@", error);
}
[session addInput:input];
[session startRunning];
}
는 나는있는 UIView를 만들어 나는 vImagePreview에 연결,하지만 여전히 그것은 충돌을주고있다 ... 작동하지 않습니다 비디오 캡처 미리보기를 렌더링하려면 UIImageView가 필요합니다. 있는 UIImageView에
변경 vImagePreview 유형 당신이 당신의 인터페이스 파일에 vImagePreview 속성을 지정 했
@property(nonatomic, retain) IBOutlet UIImageView *vImagePreview;
을 다음과 같이? – ldindu
예 그랬습니다. – user2420219
당신은 어떻게 선언 했습니까? – ldindu