我正在尝试将AVPlayerViewController
添加到聊天气泡中,以便收到的任何音频或视频消息都可以直接在聊天气泡中播放。我的UITableView
列表包含许多这些气泡。但是当我尝试滚动表格视图时,应用程序崩溃显示 - [AVPlayerViewController retain]: message sent to deallocated instance.
以下是我为每个聊天气泡添加AVPlayerViewController
对象的代码: -
_playerViewController = [[AVPlayerViewController alloc] init];
_playerViewController.player = [AVPlayer playerWithURL:url];
_playerViewController.view.frame = CGRectMake(10.0, 5.0, 190.0 , 90.0); // self.view.bounds;
_playerViewController.showsPlaybackControls = YES;
[_playerViewController.view setTranslatesAutoresizingMaskIntoConstraints:YES];
[_playerViewController .view setAutoresizingMask:UIViewAutoresizingFlexibleLeftMargin | UIViewAutoresizingFlexibleRightMargin | UIViewAutoresizingFlexibleTopMargin | UIViewAutoresizingFlexibleBottomMargin];
[cell.contentview addsubview:_playerViewController.view];
url包含文件路径(音频/视频),我正在尝试将_playerViewController
对象添加到UITableView
单元格的内容视图中,但它会引发上述错误。任何人都可以告诉我我应该做什么。
答案 0 :(得分:1)
每个单元格不应包含AVPlayerViewController
。太可怕了!
你应该管理你的东西,就像每个单元格只显示你的视频缩略图,你应该管理一系列的视频网址。现在使用普通AVPlayerViewController
来播放任何视频。我的意思是当用户点击单元格或播放单元格按钮然后将该网址传递给播放器并播放视频!!