Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/excel/28.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Ios 关闭YTPlayerView()并返回UITableView_Ios_Swift_Youtubeplayer - Fatal编程技术网

Ios 关闭YTPlayerView()并返回UITableView

Ios 关闭YTPlayerView()并返回UITableView,ios,swift,youtubeplayer,Ios,Swift,Youtubeplayer,我的容器视图中嵌入了一个UITableView,它是在当前上下文中以模式呈现的。视频加载正常,但我无法简单地关闭视频并返回UITableView。我想为视频选项能够被关闭,只需返回到原来的tableView 我最后添加了一个关闭按钮,并将其限制在containerView的右上角,并将其设置为隐藏,直到视频被取消 @objc func dismissVideo() { self.playerView.removeFromSuperview() closeButton.is

我的容器视图中嵌入了一个UITableView,它是在当前上下文中以模式呈现的。视频加载正常,但我无法简单地关闭视频并返回UITableView。我想为视频选项能够被关闭,只需返回到原来的tableView


我最后添加了一个关闭按钮,并将其限制在containerView的右上角,并将其设置为隐藏,直到视频被取消

  @objc func dismissVideo() {
    self.playerView.removeFromSuperview()
    closeButton.isHidden = true

}


func tableView(_ tableView: UITableView, didSelectRowAt indexPath: IndexPath) {


    let item = videoID[indexPath.row]
    view.addSubview(playerView)
     playerView.layer.cornerRadius = 20
    playerView.anchor(top: containerView.topAnchor, left: containerView.leftAnchor, bottom: containerView.bottomAnchor, right: containerView.rightAnchor, paddingTop: 0, paddingLeft: 0, paddingBottom: 0, paddingRight: 0, width: 0, height: 0)
    let playerVars = ["playsinline": 1] // 0: will play video in fullscreen
    self.playerView.load(withVideoId: item, playerVars: playerVars)
    closeButton.addTarget(self, action: #selector(dismissVideo), for: .touchUpInside)
    closeButton.isHidden = false
}

好的,那你想怎么做呢?我认为在视频上向下滑动会很理想,或者如果视频是全屏的,请按视频上的x按钮。请显示解除操作的代码我正在使用我在以前的视图中添加的代码,如果触碰容器视图的背景返回主页。但我不确定在何处添加它,以便playerView解除。@soRazor-只需在解除操作中添加
self.view.removefromSuperView(playerView)
的代码,并将此代码也隐藏在
self.disclose(动画:false,完成:nil)
  @objc func dismissVideo() {
    self.playerView.removeFromSuperview()
    closeButton.isHidden = true

}


func tableView(_ tableView: UITableView, didSelectRowAt indexPath: IndexPath) {


    let item = videoID[indexPath.row]
    view.addSubview(playerView)
     playerView.layer.cornerRadius = 20
    playerView.anchor(top: containerView.topAnchor, left: containerView.leftAnchor, bottom: containerView.bottomAnchor, right: containerView.rightAnchor, paddingTop: 0, paddingLeft: 0, paddingBottom: 0, paddingRight: 0, width: 0, height: 0)
    let playerVars = ["playsinline": 1] // 0: will play video in fullscreen
    self.playerView.load(withVideoId: item, playerVars: playerVars)
    closeButton.addTarget(self, action: #selector(dismissVideo), for: .touchUpInside)
    closeButton.isHidden = false
}