да, мы можем!
Полагаю, что вы хотите сделать, это показать указатель активности во время загрузки фильма, а не во время его воспроизведения? Я просто предполагаю это и продолжаю ...
в SDK 3.2 и выше, весь MPMoviePlayerController (и MPMoviePlayerViewController) намного лучше, чем в предыдущих версиях. Если вы все еще используете MPMoviePlayerController, вы можете рассмотреть возможность переключения на MPMoviePlayerViewController (который в основном является подклассом UIView, который инкапсулирует объект MPMoviePlayerController).
В любом случае, чтобы показать и скрыть представление UIActivityindicator, я бы порекомендовал вам подключаться к уведомлениям, отправляемым из MPMoviePlayerController при изменении загрузки или состояния воспроизведения.
Вот некоторые из них:
MPMoviePlayerPlaybackStateDidChangeNotification
MPMoviePlayerLoadStateDidChangeNotification
так что вы подключаетесь к тем событиям, которые делают это:
[[NSNotificationCenter defaultCenter] addObserver: self
selector: @selector(loadStateChanged:)
name: MPMoviePlayerLoadStateDidChangeNotification
object: moviePlayerViewController.moviePlayer];
и это
[[NSNotificationCenter defaultCenter] addObserver: self
selector: @selector(playBackStateChanged:)
name: MPMoviePlayerPlaybackStateDidChangeNotification
object: moviePlayerViewController.moviePlayer];
и в ваших обработчиках (playBackStateChanged
и loadStateChanged
)
вы можете сделать что-то вроде этого:
-(void)playBackStateChanged:(id)sender
{
MPMoviePlaybackState playbackState = [moviePlayerViewController.moviePlayer playbackState];
switch (playbackState) {
case MPMoviePlaybackStateStopped :
break;
case MPMoviePlaybackStatePlaying :
[yourActivityIndicatorView stopAnimating];
break;
case MPMoviePlaybackStateInterrupted :
[yourActivityIndicatorView startAnimating];
break;
}
}
убедитесь, что для свойства "hidesWhenStopped" (или аналогичного) вашего IndicatorView установлено значение yes (если вы это сделаете, вам не нужно заботиться о скрытии и скрытии элемента управления.
остальное просто, просто добавьте свой ActivityIndicatorView поверх представления MPMovieViewController.
надеюсь, что смогу помочь
ура
сэм