Воспроизведение видео в нескольких ячейках uitableView ios

У меня есть большая проблема с моим UITableView. Я пытаюсь воспроизвести видео, когда пользователь нажимает на ячейку perticular. но моя проблема в том, что когда я прокручиваю таблицу, видео появляется и в других ячейках. как я могу предотвратить это?

вот мой код (я использую BrihgtCove, чтобы показать видео)

class CatagoryOne: UITableViewController,BCOVPlaybackControllerDelegate {

// MARK: - BrightCove Properties    
let catalogService = BCOVCatalogService(token:kViewControllerCatalogToken)
var playbackController :BCOVPlaybackController?
var avpvs : AVPlayerViewController?
static var selectedRow : Int?


required init?(coder aDecoder: NSCoder) {

    let manager = BCOVPlayerSDKManager.sharedManager();
    avpvs = AVPlayerViewController()
    playbackController = manager.createPlaybackControllerWithViewStrategy(manager.defaultControlsViewStrategy())
    super.init(coder: aDecoder)
    playbackController!.analytics.account = kPublistherID
    playbackController!.delegate = self
    playbackController!.autoAdvance = true
    playbackController!.autoPlay = true

}

 override func tableView(tableView: UITableView, cellForRowAtIndexPath indexPath: NSIndexPath) -> UITableViewCell {
    let cell = tableView.dequeueReusableCellWithIdentifier("VideoItemCell", forIndexPath: indexPath) as! NewVideoItemCell
    print("indexPath on cellForRowAtIndexPath = " ,indexPath.row)
    print("selectedRow on cellForRowAtIndexPath = " ,CellReUseModel.selectedRow)
    // Configure the cell...
    configureVideoListCell(cell, atRow: indexPath.row)
    return cell
}

func configureVideoListCell (cell : NewVideoItemCell,atRow : Int) {
    //cell.backgroundColor = Colors.videoListItemColor
    cell.videoTitle.textColor = Colors.videoListTextColor
    cell.videoTitle.text = videoModel.titleOfVideoList(atRow)
    //cell.thumbNail.image = videoModel.thumbnailForVideoItem(atRow)
}

override func tableView(tableView: UITableView, didSelectRowAtIndexPath indexPath: NSIndexPath) {

    let cell = tableView.cellForRowAtIndexPath(indexPath) as! NewVideoItemCell
    print("indexpath Row = " ,indexPath.row)
    CellReUseModel.selectedRow = indexPath.row
    print("Selected Row = " ,CellReUseModel.selectedRow)
    //self.tableView.reloadData()


    // the Code that plays the video

    self.addChildViewController(avpvs!)
    avpvs!.view.frame = cell.contentView.bounds
    avpvs!.view.autoresizingMask = [.None]
    avpvs!.videoGravity = AVLayerVideoGravityResizeAspectFill
    cell.contentView.addSubview(self.avpvs!.view)
    avpvs!.didMoveToParentViewController(self)
    requestContentFromCatalog()

}
}

Пожалуйста, помогите мне с этим:(

0 ответов

Другие вопросы по тегам