Warstwa AVPlayer wewnątrz widoku nie zmienia rozmiaru po zmianie ramki UIView

mamUIView który zawieraAVPlayer pokazać wideo. Przy zmianie orientacji muszę zmienić rozmiar i lokalizację filmu.

Nie jestem zbyt doświadczony w zmianie rozmiaru warstw, więc mam problemy z zmianą rozmiaru wideo.

Zaczynam od utworzeniaAVPlayer i dodanie swojego odtwarzacza do mojej warstwy videoHolderView:

<code>NSURL *videoURL = [NSURL fileURLWithPath:videoPath];
self.avPlayer = [AVPlayer playerWithURL:videoURL];

AVPlayerLayer* playerLayer = [AVPlayerLayer playerLayerWithPlayer:self.avPlayer];
playerLayer.frame = videoHolderView.bounds;
playerLayer.videoGravity = AVLayerVideoGravityResizeAspect;
playerLayer.needsDisplayOnBoundsChange = YES;

[videoHolderView.layer addSublayer:playerLayer];
videoHolderView.layer.needsDisplayOnBoundsChange = YES;
</code>

Następnie w późniejszym czasie zmieniam rozmiar i lokalizację ramki videoHolderView:

<code>[videoHolderView setFrame:CGRectMake(0, 0, 768, 502)];
</code>

W tym momencie potrzebuję avPlayera do zmiany rozmiaru do tego samego wymiaru. Nie dzieje się to automatycznie - avPlayer pozostaje w swoim małym rozmiarze w videoHolderView.

Jeśli ktoś może pomóc, byłbym wdzięczny za każdą radę.

Dzięki chłopaki.

questionAnswers(12)

yourAnswerToTheQuestion