Возврат к предыдущему виду контроллера - PullRequest
0 голосов
/ 04 мая 2020

У меня есть контроллер представления, который я сделал с помощью кодирования, а не раскадровки для отображения видео. После завершения воспроизведения видео я не могу заставить контроллер просмотра вернуться к предыдущему. У меня есть кнопка, которая ведет пользователя к видео, но когда видео заканчивается sh, оно не go возвращается к предыдущему контроллеру просмотра.

import AVKit
import AVFoundation
import UIKit

class ViewController: UIViewController {

    override func viewDidLoad() {
        super.viewDidLoad()


    }

    override func viewDidAppear(_ animated: Bool) {
        super.viewDidAppear(animated)

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


   let vc = AVPlayerViewController()
      vc.player = player
     present(vc, animated: true)
    }


}

это мой код для моего видео. Я сделал все остальное, чтобы создать приложение на своей раскадровке

1 Ответ

0 голосов
/ 04 мая 2020

К go назад к предыдущему V C после завершения видео, вам необходимо -

  1. добавить наблюдателя, который может определить, когда видео прекращает воспроизведение, а затем -
  2. отклонить AVPlayerViewController

Для выполнения sh задачи 1 - этот ответ по каналу помогает настроить наблюдателя - { ссылка }

Для выполнения задачи 2 - просто удалите AVPlayerViewController изнутри функции playerDidFinishPlaying, например:

func playerDidFinishPlaying(note: NSNotification){
  // Video finished playing
  self.dismiss(animated: true, completion: nil)
}
...