如何重置子视图?

时间:2017-05-17 14:13:59

标签: ios swift reset subview addsubview

按下按钮,我有一个子视图开始使用以下内容播放视频:

@IBAction func cardboardButton(_ sender: UIButton) {

    if let button = self.videoVRView.subviews[2] as? UIButton {
        button.sendActions(for: .touchUpInside)


               }

}

which works like a charm, it launche a specific video player.

退出thtat子视图时,id喜欢重置它。目前,如果我完全是子视图,然后重新启动它,它会从我离开的地方开始播放视频。我需要重置该子视图,以便从0开始重新启动视频。

我尝试了以下内容:

    @IBAction func cardboardButton(_ sender: UIButton) {

    if let button = self.videoVRView.subviews[2] as? UIButton {
        button.sendActions(for: .touchUpInside)
        let parent = self.videoVRView.subviews[2]
        self.videoVRView.removeFromSuperview()
        self.videoVRView = nil
        parent?.addSubview(self.videoVRView)

               }

}

没有任何成功......

有人有任何提示吗?

1 个答案:

答案 0 :(得分:0)

您使用的是AVPlayer吗? AVPlayer的方法有:Freezable,您可以在其中查看视频的特定秒。这样它总是从0开始。

我不确定你在这里尝试使用代码`

seekTo()

是的,您正在从超级视图中删除视图,然后再次添加它,但是播放器是否会被销毁并创建并再次设置?因为这将使它从一开始就开始。您正在添加视图,但您不是再次创建它,是吗?它被设置为零。