非常に単純なビデオプレーヤーを設定しようとしています。 (iOS 5.1、Xcode 4.3.1)4秒後にMPMoviePlayerControllerが停止する
呼び出すと正常に動作しますが、4秒間しか再生されないと黒い画面が表示されます。再生中に画面をタップすると、シーケンス全体が再生されます。 4秒間画面をタップすると、黒い画面が表示されます。
何が欠けていますか?
クルト
編集されたバージョンは、罰金果たしています。インターフェイスファイルで
:.mファイルで
@property (nonatomic,strong) MPMoviePlayerController *myMovieController;
:
-(void)playMedia {
NSString *movieFile = [[NSBundle mainBundle] pathForResource:@"Movie" ofType:@"m4v"];
MPMoviePlayerController *moviePlayer = [[MPMoviePlayerController alloc] initWithContentURL:[NSURL fileURLWithPath:movieFile]];
[moviePlayer prepareToPlay];
moviePlayer.view.frame = self.view.bounds;
moviePlayer.scalingMode = MPMovieScalingModeAspectFit;
moviePlayer.movieSourceType = MPMovieSourceTypeFile;
moviePlayer.fullscreen = YES;
moviePlayer.controlStyle = MPMovieControlStyleFullscreen;
self.myMovieController = moviePlayer;
[self.view addSubview: self.myMovieController.view];
[[NSNotificationCenter defaultCenter] addObserver:self
selector:@selector(playMediaFinished:)
name:MPMoviePlayerPlaybackDidFinishNotification
object:moviePlayer];
[self.myMovieController play];
}
私はARCを使用していますが、私の無知を許しています。 [moviePlayer retain]を呼び出すと、「ARCは「retain」の明示的メッセージ送信を禁止しています」というエラーメッセージが表示されます。早速のお返事ありがとうございます。 – Kurt
入手しました。あなたが言ったように、あなたは財産を割り当てました。私は投稿を編集します。 – Kurt
良いこと、うまくいきました。あなたが明示的に保持を呼び出すことはできないと言っているが、プロパティは仕事をしていると言っているように、ARCで保持を行うために別のより洗練された方法があるなら、Dunno。 – davidfrancis