gpt4 book ai didi

swift - addPeriodicTimeObserver 生成一个转义闭包错误

转载 作者:搜寻专家 更新时间:2023-11-01 06:51:32 30 4
gpt4 key购买 nike

我正在关注这个 tutorial解释了如何创建 AVPlayer 并将其与 Swift UI 一起使用。我在搜索栏变成视频播放器进度条的部分。

因此,在该部分之后,我编写了教程中显示的代码,但在下面这行代码中,

player.addPeriodicTimeObserver(forInterval: CMTime(seconds: 0.5, preferredTimescale: 600), queue: nil) { time in
guard let item = self.player.currentItem else{
return
}

self.seekPos = time.seconds / item.duration.seconds
}

time in 之前的括号带有红色下划线,我收到以下错误:

Escaping closure captures mutating 'self' parameter

有办法解决这个问题吗?我希望 slider 成为视频进度条。 addPeriodicTimeObserver 位于我的 struct 内的 init 中。

编辑:我使用的教程是针对 iOS 的,但我正在为 macOS 开发。我刚刚进行了更改,因此该教程中的代码适用于 macOS。

最佳答案

试试这个

player.addPeriodicTimeObserver(forInterval: CMTime(seconds: 0.5, preferredTimescale: 600), queue: nil) {[self] time in
guard let item = self.player.currentItem else{
return
}

self.seekPos = time.seconds / item.duration.seconds
}

希望能帮到你。

关于swift - addPeriodicTimeObserver 生成一个转义闭包错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56881562/

30 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com