我必须从服务器播放视频,这需要一些时间。因此,我编写了一个activityIndi​​cator并开始对其进行动画处理。但在播放视频之前, Activity 指示器不会显示。首先,我已经隐藏了 Activity 指示器,然后将其取消隐藏并开始制作动画,但是在视频开始播放时会显示出来。

这是我的代码:
信息indicatorView is a UIView,我在UIView里面有indView is an UIIndicatorView;我正在使用AV Player进行播放;

请清楚阅读该指示符视图正在视图中显示,但是当我说开始制作动画但在视频开始播放一段时间后,该问题并未出现。

  indicatorView.hidden = NO;
  [indView startAnimating];

//此处的指标视图必须显示在VIEW中,但未显示;
  MediaItem *item = [allVideos objectAtIndex:indexPath.row];
  [playerModel playMyVideo:item];

//现在可以播放视频5秒后显示

问题是什么。
我在两个地方都用过派遣性庇护,但没有用

最佳答案

只需添加一种方法,

-(void) videoPrepareToPlay {
    MediaItem *item = [allVideos objectAtIndex:indexPath.row];
    [playerModel playMyVideo:item];
}

然后像这样调用该方法
   indicatorView.hidden = NO;
  [indView startAnimating];
  [self performSelector:@selector(videoPrepareToPlay) withObject:nil afterDelay:0.2];

可能对您有用。

关于ios - 事件指示器在iOS中不起作用?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/33208861/

10-12 14:33