Друзья, подскажите, ищу вариант решения, как проигрывать аудио/видео только в одной ячейке. Поскольку в секции может быть 10-20 различных видео/музыки, пользователь может запустить везде функцию play. Интересует кто как реализовывал подобные решения
func collectionView(_ collectionView: UICollectionView, cellForItemAt indexPath: IndexPath) -> UICollectionViewCell {
let cell = collectionView.dequeueReusableCell(withReuseIdentifier: videCellId, for: indexPath) as! InsideVideoCell
cell.playButton.tag = indexPath.row // 05.01
cell.playButton.addTarget(self, action: #selector(playpause), for: .touchUpInside) // 05.01
if let videosArray = videos?[indexPath.item] {
queueUtility.async {
let url = URL(string: videosArray)
let playerItem = AVPlayerItem(url: url!)
DispatchQueue.main.async {
self.player = AVPlayer(playerItem: playerItem)
self.player.actionAtItemEnd = .none
let videoPlayerLayer = AVPlayerLayer(player: self.player)
videoPlayerLayer.videoGravity = AVLayerVideoGravity.resizeAspectFill
videoPlayerLayer.frame = cell.bounds
cell.insertSubview(cell.videoPlayerController.view, at: 0)
cell.contentView.addSubview(cell.playButton)
cell.videoPlayerController.player = self.player
cell.videoPlayerController.view.frame = videoPlayerLayer.frame
}
}
} else {
print("Нет Видео")
}
return cell
}
Использую sender.tag - я запускаю/останавливаю видео в каждой ячейке, но интересует метод, как сделать возможность проигрывания только в одной ячейке
Благодарю