【问题标题】:Do I have to remove in built observers in swift?我必须迅速删除内置的观察者吗?
【发布时间】:2019-12-01 23:52:56
【问题描述】:

所以我有一个在后台循环播放视频的登录页面,我使用以下代码完成了此操作:

videoPlayer.play()
NotificationCenter.default.addObserver(forName: .AVPlayerItemDidPlayToEndTime, object: videoPlayer.currentItem, queue: .main) { [weak self] _ in
            self?.videoPlayer?.seek(to: CMTime.zero)
            self?.videoPlayer?.play()
        }

问题是我是否必须在 deinit 或其他地方删除此观察者,如果是这样,我该如何删除 .AVPlayerItemDidPlayToEndTime 观察者。不确定删除这些内置观察器时的语法。

【问题讨论】:

标签: ios swift xcode nsnotificationcenter


【解决方案1】:

当控制器关闭时,Swift 会自动取消初始化内置的可观察对象 - 只需使用以下函数。

deinit {
    // Release all resources
    // perform the deinitialization
}

还有一个类似的问题问here.

Swift deinit

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2019-09-18
    • 1970-01-01
    • 1970-01-01
    • 2020-02-20
    相关资源
    最近更新 更多