小编dev*_*vlo的帖子

swiftui 中的播放控件

尝试使用AVKit的AVPlayer播放没有播放控件的视频:

private let player = AVPlayer(url: URL(fileURLWithPath: Bundle.main.path(forResource: "videoToPlay", ofType: "mp4")!))
player.showsPlaybackControls = false
Run Code Online (Sandbox Code Playgroud)

上述结果会产生一条错误消息,指出声明必须用“;”分隔。我也尝试过:

VideoPlayer(player: player)
    .onAppear {
        player.showsPlaybackControls = false
    }
Run Code Online (Sandbox Code Playgroud)

这会导致不同的错误。

关于使用 swiftui 隐藏播放控件有什么建议吗?

ios swift swiftui

15
推荐指数
2
解决办法
6412
查看次数

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()
}
Run Code Online (Sandbox Code Playgroud)

ios swift swiftui

9
推荐指数
2
解决办法
6146
查看次数

iOS SwiftUI - 将 VideoPlayer 重置为视频开头

我似乎无法停止视频,只能暂停,但这会导致视频从暂停的地方开始,而不是像我希望的那样在用户下次播放视频时重新开始。

VStack {
        VideoPlayer(player: player)
            .edgesIgnoringSafeArea(.all)
            .onAppear {
                player.play()
            }
            .onDisappear {
                player.pause()
            }
    }
Run Code Online (Sandbox Code Playgroud)

我如何才能阻止视频消失,以便每次播放时都会重置?

ios swift swiftui

2
推荐指数
1
解决办法
1345
查看次数

在 SwiftUI 中更改视频端的视图

我在尝试查找视频的结束时间时遇到错误

import SwiftUI
import AVKit

struct ContentViewC: View {

    
    private let player = AVPlayer(url: URL(fileURLWithPath: Bundle.main.path(forResource: "videoToPlay", ofType: "mp4")!))
    
    // throw multiple errors
    NotificationCenter.default.addObserver(self, selector: #selector(playerDidFinishPlaying), name: .AVPlayerItemDidPlayToEndTime, object: nil)

    func playerDidFinishPlaying(note: NSNotification) {
        print("video finished")
        // how to change view here?
    }
    
    
    var body: some View {
        
        VStack {
            AVPlayerControllerRepresented(player: player)
                .edgesIgnoringSafeArea(.all)
                .onAppear {
                    player.play()
                }
                .onDisappear {
                    player.pause()
                    player.seek(to: .zero)
                }
        }
        .background(Color(.black))
        .edgesIgnoringSafeArea(.all)
    }
}
Run Code Online (Sandbox Code Playgroud)

解决后,如何更改 func playerDidFinishPlaying 中的视图?

我的应用程序有一个“HomeView”,它有三个按钮,单击时,它们会导航到一个将播放视频的新视图。在新视图的视频结束时,我想导航回此“HomeView”

import SwiftUI

struct ContentView: View {
    
    
    var …
Run Code Online (Sandbox Code Playgroud)

ios swift swiftui

1
推荐指数
1
解决办法
1960
查看次数

标签 统计

ios ×4

swift ×4

swiftui ×4