В моем приложении я пытаюсь воспроизвести несколько видеороликов в UITableViewCell
для этого. Я использую MPMoviePlayerController
, он воспроизводит видео без каких-либо проблем. но он воспроизводит одно видео за раз, а в другой ячейке я получаю черный экран, предположим, что в первый раз видна одна ячейка, которую воспроизводит видео, но как только я прокручиваю вторую строку, первый вид видео сотовой ячейки исчезает с черным экраном. Я не понимаю, как сделать видимым все видео, даже если я просматриваю представление таблицы. это код, я использую для воспроизведения видео в пользовательской ячейке:Несколько проблем с воспроизведением видео в UITableViewCell
Пользовательские инициализации Cell:
- (id)initWithStyle:(UITableViewCellStyle)style reuseIdentifier:(NSString *)reuseIdentifier
{
self = [super initWithStyle:style reuseIdentifier:reuseIdentifier];
if (self){
NSArray *nibArray=[[NSBundle mainBundle]loadNibNamed:@"CustomCell" owner:self options:nil];
self=[nibArray objectAtIndex:0];
_player = [[MPMoviePlayerController alloc] init];
_player.view.frame = CGRectMake(0,0,320,300);
_player.movieSourceType = MPMovieSourceTypeStreaming;
[_player setContentURL:[NSURL URLWithString:@"http://files.parse.com/ef5649ee-75c6-4c76-ba3b-37be4d281125/b35589f7-c0aa-4ca8-9f7c-fd31b2dc8492-vedioTeaser.mov"]];
[_player prepareToPlay];
[_player play];
[self addSubview:_player.view];
}
return self;
}
метод CellForRowAtIndexPath
- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath
{
static NSString *CellIdentifier = @"Cell";
CustomCell *cell = [tableView dequeueReusableCellWithIdentifier:CellIdentifier];
if(cell == nil){
cell = [[CustomCell alloc] initWithStyle:UITableViewCellStyleSubtitle reuseIdentifier:CellIdentifier];
cell.accessoryType = UITableViewCellAccessoryDisclosureIndicator;
}else{
[self.tableView reloadRowsAtIndexPaths:[NSArray arrayWithObjects:[NSIndexPath indexPathForRow:indexPath.row inSection:indexPath.section], nil] withRowAnimation:UITableViewRowAnimationAutomatic];
}
cell.selectionStyle = UITableViewCellSelectionStyleNone;
return cell;
}
Любая помощь будет высоко оценен.
Привет, @vinod - вы нашли изящное решение для этого? Я тоже борюсь с этим (мне нужны элементы управления, поэтому необработанное AVFoundation не подходит) – Boaz