Я нахожу MPMoviePlayerController.h, существует
enum {
MPMovieLoadStateUnknown = 0,
MPMovieLoadStatePlayable = 1 << 0,
MPMovieLoadStatePlaythroughOK = 1 << 1, // Playback will be automatically started in this state when shouldAutoplay is YES
MPMovieLoadStateStalled = 1 << 2, // Playback will be automatically paused in this state, if started
};
typedef NSInteger MPMovieLoadState;
но когда я сделал
NSLog(@"%d",player.loadState)
это распечатывает 5 или иногда 3, как это происходило? Поскольку я знаю, что loadstate имеет значение 0,1,2,4, обращаются к документации разработчика.Спасибо!
PlayState - это битовая маска. Может быть установлено любое количество битов, например
MPMovieLoadStatePlaythroughOK | MPMovieLoadStatePlayable
Проверить наличие таких состояний:
MPMovieLoadState state = [playerController loadState];
if( state & MPMovieLoadStatePlaythroughOK ) {
NSLog(@"State is Playthrough OK");
}