【问题标题】:Swift3 Play multiple video files with AVPlayerSwift3 使用 AVPlayer 播放多个视频文件
【发布时间】:2017-12-10 12:27:47
【问题描述】:

我有一个小代码可以让我在点击 UIButton 时播放本地文件。但我想要的是在 3 个不同的 UIButtons 上播放多个文件,因为我有 3 个视频文件要附加到我的应用程序中。

这是当前代码:

import UIKit
import AVFoundation
import AVKit

class ViewController: UIViewController {

    var playerController = AVPlayerViewController()
    var player:AVPlayer?


    override func viewDidLoad() {
        super.viewDidLoad()
        // Do any additional setup after loading the view, typically from a nib.

        let videoString:String? = Bundle.main.path(forResource: "Video", ofType: ".mp4")

        if let url = videoString {

            let videoURL = NSURL(fileURLWithPath: url)

            self.player = AVPlayer(url: videoURL as URL)
            self.playerController.player = self.player



        }


    }

    override func didReceiveMemoryWarning() {
        super.didReceiveMemoryWarning()
        // Dispose of any resources that can be recreated.
    }

    @IBAction func PlayVideo(_ sender: AnyObject) {

        self.present(self.playerController, animated: true, completion: {

            self.playerController.player?.play()

        })

    }


}

【问题讨论】:

    标签: swift3 avplayer avplayerviewcontroller ios10.2


    【解决方案1】:

    您可以在按钮点击功能中为不同的视频文件创建网址

    @IBAction func Button1Click(_ sender: AnyObject) {
        let videoString:String? = Bundle.main.path(forResource: "Video1", ofType: ".mp4")
    
        if let url = videoString {
            let videoURL = NSURL(fileURLWithPath: url)
            self.player = AVPlayer(url: videoURL as URL)
            self.playerController.player = self.player
        }
    
        self.present(self.playerController, animated: true, completion: {
            self.playerController.player?.play()
    
        })
    
    }
    
    @IBAction func Button2Click(_ sender: AnyObject) {
        let videoString:String? = Bundle.main.path(forResource: "Video2", ofType: ".mp4")
    
        if let url = videoString {
            let videoURL = NSURL(fileURLWithPath: url)
            self.player = AVPlayer(url: videoURL as URL)
            self.playerController.player = self.player
        }
    
        self.present(self.playerController, animated: true, completion: {
            self.playerController.player?.play()
    
        })
    
    }
    
    @IBAction func Button3Click(_ sender: AnyObject) {
        let videoString:String? = Bundle.main.path(forResource: "Video3", ofType: ".mp4")
    
        if let url = videoString {
            let videoURL = NSURL(fileURLWithPath: url)
            self.player = AVPlayer(url: videoURL as URL)
            self.playerController.player = self.player
        }
    
        self.present(self.playerController, animated: true, completion: {
            self.playerController.player?.play()
    
        })
    
    }
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2018-02-19
      • 2022-01-07
      • 2017-10-26
      • 1970-01-01
      相关资源
      最近更新 更多