Saatin% 90'ında iyi çalışan bir kamera önizleme pencerem var. Ancak, bazen arka plandaysa uygulamama döndüğümüzde önizleme görüntülenmez. Bu görüş yükler zaman diyoruz kodudur:AVCaptureSession, arkadan dönerken başarısız oluyor
- (void) startCamera {
session = [[AVCaptureSession alloc] init];
session.sessionPreset = AVCaptureSessionPresetPhoto;
AVCaptureVideoPreviewLayer *captureVideoPreviewLayer = [[AVCaptureVideoPreviewLayer alloc] initWithSession:session];
captureVideoPreviewLayer.frame = _cameraView.bounds;
[_cameraView.layer addSublayer:captureVideoPreviewLayer];
captureVideoPreviewLayer.videoGravity = AVLayerVideoGravityResizeAspectFill;
captureVideoPreviewLayer.position=CGPointMake(CGRectGetMidX(_cameraView.bounds), 160);
AVCaptureDevice *device = [AVCaptureDevice defaultDeviceWithMediaType:AVMediaTypeVideo];
NSError *error = nil;
AVCaptureDeviceInput *input = [AVCaptureDeviceInput deviceInputWithDevice:device error:&error];
if (!input) {
NSLog(@"ERROR: %@", error);
UIAlertView *alert = [[UIAlertView alloc] initWithTitle:@"Important!"
message:@"Unable to find a camera."
delegate:nil
cancelButtonTitle:@"Ok"
otherButtonTitles:nil];
[alert show];
[alert autorelease];
}
[session addInput:input];
stillImage = [[AVCaptureStillImageOutput alloc] init];
NSDictionary *outputSettings = [[NSDictionary alloc] initWithObjectsAndKeys:AVVideoCodecJPEG , AVVideoCodecKey, nil];
[stillImage setOutputSettings:outputSettings];
[session addOutput:stillImage];
[session startRunning];
}
Bu olursa, benim tercihleri görünümüne geçebilirsiniz ve tekrar ve arkadaşları iyi, ama ben öldürmek istiyorum can sıkıcı bir böcek. Önizleme penceresi, storyboard'umdaki bir UIView.
Teşekkür ederim, bunu yapacağım ve birkaç saatliğine test edeceğim :) – mrEmpty
fantastik çözüm ....... –
Bekle - 'viewWillAppear'/'Disappear' adlı yalnızca bir örnek değil mi sahne uygulamanızda hareket ettikçe: uygulama ön plana girip çıktığında çağrılmıyorlar mı? UIApplicationWillResignActiveNotification' için kayıt yaptırmak gerekli değil mi? [Bunun örnekleriyle QA] (http://stackoverflow.com/a/22868754/294884) – Fattie