私はフルスクリーンビデオディスプレイの代わりにセル自体でビデオを再生しようとしています。私はこの目的のためにMPMoviePlayerController
を使用しています。UITableViewCellでビデオを再生する
私はその後cellForRowAtIndexPath:
に私はそれheightForRowAtIndexPath:
cell = [tableView dequeueReusableCellWithIdentifier:simpleTableVideoIdentifier];
if (cell == nil){
cell = [[UITableViewCell alloc] initWithStyle:UITableViewCellStyleDefault reuseIdentifier:simpleTableVideoIdentifier];
}
NSDictionary *dictionary = [dataArray objectAtIndex:indexPath.section];
NSDictionary *data = dictionary;
if ([data[@"type_of_post"] isEqualToString:@"video"]) {
NSString *path = data[@"video"];
NSURL *videoURL = [NSURL URLWithString:path];
moviePlayer = [[MPMoviePlayerController alloc] initWithContentURL:videoURL];
[moviePlayer setControlStyle:MPMovieControlStyleNone];
moviePlayer.scalingMode = MPMovieScalingModeAspectFit;
[moviePlayer.view setFrame:CGRectMake(10.0, 0.0, 300.0 , 400.0)];
[cell addSubview:moviePlayer.view];
moviePlayer.view.hidden = NO;
[moviePlayer prepareToPlay];
[moviePlayer play];
}else{
//do something else
}
と明らかに行う実装セクション
に
MPMoviePlayerController *moviePlayer;
を定義しています3210
しかし、それはMPMoviePlayerController *moviePlayer;
として定義されていますが、それはそのセルだけに固執せず、下にスクロールするにつれて下がり続けます。私が記述したもの以外にこれを実装するための他の方法は何もわかりませんが、それは明らかに正しい方法ではないようです。誰かが私を正しい方向に導くことができたら本当に感謝します。
おかげ
マット、どうすれば削除できますか? – Jonathan
と '[cell.contentView removeFromSuperview]'? – Jonathan
私はそれを行いますが、スクロールダウンしてからスクロールアップすると、ビデオはセルにはもうありません – Jonathan