Mam UIViewautoLayout i AVCaptureVideoPreviewLayer
@property (nonatomic, strong) IBOutlet UIView *previewView;
previewView
ostatecznie wyświetlić podgląd tego, co dzieje się w moim aparacie na moim iPhone przy użyciu następującej warstwę podglądu.
@property (nonatomic, strong) AVCaptureVideoPreviewLayer *previewLayer;
mam ograniczenia ustanowione na moim previewView
w storyboardy i dlatego używam w następującej kwestii.
self.previewLayer.frame = self.previewView.bounds; // This doesn't work
self.previewLayer.videoGravity = AVLayerVideoGravityResize;
[self.previewView.layer addSublayer:self.previewLayer];
previewLayer
zostanie dodany do previewView podwarstwy, ale nie wykazują w odpowiednich parametrach (szerokość i wysokość). Myślę, że jest to spowodowane użyciem ograniczeń w autolayout.
Jak mogę to naprawić?
Update: ja też próbowałem następujące:
self.previewLayer.videoGravity = AVLayerVideoGravityResizeAspect;
CALayer *rootLayer = [previewView layer];
rootLayer.frame = self.previewView.bounds;
[rootLayer setMasksToBounds:YES];
[self.previewLayer setFrame:[rootLayer bounds]];
[rootLayer addSublayer:self.previewLayer];
I wydaje się, aby pokazać jak to: http://cl.ly/image/3T3o0O1E3U17
Pierwsze blisko, ale wciąż bardzo dużo off.
Mam podobny problem. Moje zdjęcie z kamery wygląda bardzo podobnie do twojego, tzn. Po prawej stronie jest duży pusty pasek. Do tej pory doszedłem do wniosku, że problem ten występuje tylko dla mnie podczas korzystania z Auto-układu. – robert