수신 된 오디오 또는 비디오 메시지를 채팅 거품에서 직접 재생할 수 있도록 AVPlayerViewController
을 채팅 거품에 추가하려고합니다. 내 UITableView
목록에 이러한 거품이 많이 포함되어 있습니다. 나는 테이블 뷰를 스크롤 할 때 그러나, 응용 프로그램이 보여주는 추락됩니다 - 여기 아래 [AVPlayerViewController retain]: message sent to deallocated instance.
- [AVPlayerViewController retain] : 할당 취소 된 인스턴스로 전송 된 메시지
각 채팅 거품에 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은 파일 경로를 포함 (오디오/비디오), 개체를 UITableView
셀의 콘텐츠보기에 추가하려고하지만 위의 오류가 발생합니다. 누구든지 내가해야 할 일을 말해 줄 수 있습니까?
제안 해 주셔서 감사합니다. 오디오 파일 재생 논리를 알려주시겠습니까? –
@ Lion - 동일한 플레이어를 사용하여 오디오 파일을 재생해야합니까? –
비디오를 만들고 재생하는 작업 메서드를 만들 수 있습니다 (문제의 코드와 비슷한 코드). 그런 다음 버튼 클릭이나'didselectrow'에서 선택한 비디오 URL을이 메서드로 전달하고 AVPlayerViewController를 만들고 비디오를 재생합니다! – Lion