如何在tvOS swift中的AVPlayerViewController上添加自定义活动指示器



我正在开发tvOS应用程序。我有多个网格格式的视频。我使用AVPlayerViewController在应用程序中播放视频。AVPlayerViewController显示默认的活动指示器,但我的要求是添加到AVPlayerViewController中的自定义活动指示器中。如何使用swift添加自定义指示器。请建议。

首先,您需要删除一个默认的活动指示器。你可以在AVPlayerViewController子视图中找到一个活动指示符,并更改样式或隐藏它。使用以下代码(这是一个Objective-C代码,但你可以在Swift中重写它):

- (void)findActivityIndicatorInView:(UIView *)view toPerformBlock:(void(^)(UIActivityIndicatorView*))block {
    NSArray *subviews = [view subviews];
    for (UIView *subview in subviews) {
        if ([subview isKindOfClass:[UIActivityIndicatorView class]]) {
            block((UIActivityIndicatorView*)subview);
        }
        [self findActivityIndicatorInView:subview toPerformBlock:block];
    }
}

并添加此调用:

[self findActivityIndicatorInView:self.playerController.view toPerformBlock:^(UIActivityIndicatorView* v) {
        //Your actions
}];

之后,您可以在AVPlayerViewController视图前面添加自定义活动指示器。

最新更新