如何让` - [MPMoviePlayerController backgroundView]`立即显示?

时间:2011-03-31 06:15:57

标签: iphone uikit mpmovieplayercontroller

目前我的-[MPMoviePlayerController backgroundView]在电影加载不足之前不会出现。所以我放在那里的UIActivityIndicatorView没有立即出现。这让我发疯了。找到的唯一解决方案是在background-view和-[MPMoviePlayerController view]之间的某处放置重复的指示符视图。但这看起来并不规律,绝对是一个视图层次结构黑客,但无法保证正常工作。如果背景视图立即显示,所有都将神奇地工作。

如何在加载电影之前立即制作背景视图?

2 个答案:

答案 0 :(得分:2)

不要使用backgroundView,而是使用moviecontroller本身的视图......

执行以下步骤(假设您的MPMovieControllerPlayer实例被称为moviePlayerController并且您的UIActivityIndicatorView实例被称为activityIndicatorView

  • 在MPMoviePlayerController视图之上添加您的UIActivityIndi​​catorView(例如[moviePlayerController.view addSubview:activityIndixatorView];

  • 开始设置活动指示器的动画

  • 注册MPMoviePlayerLoadStateDidChangeNotification

  • 在上述通知的处理程序中,请注意moviePlayerController.loadState & MPMovieLoadStatePlayable == MPMovieLoadStatePlayable

  • 如果符合上述条件,请隐藏您的活动指示

答案 1 :(得分:0)