首页 > 解决方案 > iOS SwiftUI 视频自动播放

问题描述

我正在开发一个 iOS 应用程序,该应用程序在一个视图上具有一组按钮,当点击其中一个按钮时,该应用程序将导航到视频的新视图并应自动播放视频。该视频目前没有自动播放,但会在点击时播放,我的理解是视频应该使用下面的代码自动播放。任何帮助表示赞赏(这是我第一次构建 iOS 应用程序)。

let player = AVPlayer(url: URL(fileURLWithPath: Bundle.main.path(forResource: "videoToPlay", ofType: "mp4")!))

VideoPlayer(player: player)
  .edgesIgnoreSafeArea(.all)
  .onAppear() {
    player.play()
}

标签: iosswiftswiftui

解决方案


您是对的,以下代码确实可以工作,但由于.onAppearSwiftUI 中的工作方式,它的行为可能与您预期的不同。除非您的视频在某种形式的惰性视图中,并且在滚动之前处于屏幕外,否则.onAppear将在视图的初始渲染时运行。

您没有说明您的用例,但我建议您可以使用计时器来实现某些目标,或者使用某种 UIKit 适配。祝你好运!


推荐阅读