Невозможно получить AVPlayerLayer на iOS13.x от Objective-C - PullRequest
2 голосов
/ 04 октября 2019

Я делаю приложение для iOS с target-c.
Пожалуйста, скажите мне, как исправить AVPlayerView в среде iOS13.x.

ViewController.m write

AVPlayerLayer* layer = (AVPlayerLayer*)self.videoView.layer;

VideoView содержит AVPlayerView

AVPlayerView.m write

#import "AVPlayerView.h"
#import <AVFoundation/AVFoundation.h>

@implementation AVPlayerView

+(Class)layerClass{
    return AVPlayerLayer.class;
}

@end

Метод layerClass по какой-то причине не вызывается.
Кроме того, класс, возвращаемый (AVPlayerLayer *) self.videoView.layer
AVPresentationVontainerViewLayer.
Мне нужен класс AVPlayerView.
Как мне это исправить?

1 Ответ

2 голосов
/ 04 октября 2019

Попробуйте:

    NSURL *url = [NSURL fileURLWithPath:path];
    AVPlayer *player = [AVPlayer playerWithURL:url];
    AVPlayerViewController *AVPlayerVc = [[AVPlayerViewController alloc] init];
    AVPlayerVc.player = player;
    if (AVPlayerVc) {
        [self presentViewController:AVPlayerVc animated:YES completion:^{
            [player play];
        }];
    }

Swift Версия:

 let player = AVPlayer(url: YOUR_URL)
 let playerController = AVPlayerViewController()
 playerController.player = player
 present(playerController, animated: true) {
         player.play()
 }
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...