繁体   English   中英

AVPlayerViewController是否自动带有AVPlayer对象?

[英]Does the AVPlayerViewController automatically come with a AVPlayer object?

快速入门和视图控制器范例。 是否想知道ViewControllers是否自动随附了它所描述的对象,例如,avplayerviewcontroller是否自动附带了一个可供使用的avplayer对象,还是我们仍然需要创建avplayer对象? 另一个示例可能是uitableviewcontroller,它是自动与tableview对象一起提供的,还是我们需要在创建可继承uitableviewcontroller的可可接触类之后创建它。

这是一些示例代码,在这些代码中,我不一定要创建avplayer对象,但似乎该对象已经可以通过名为“ player”的属性使用:

import UIKit
import AVKit
import AVFoundation

class MeetTheAuthorViewController: UIViewController {



    override func viewDidLoad() {
        super.viewDidLoad()
        //playBackgroundMusic("bensound-jazzyfrenchy-castlesbackground.mp3")
        // Do any additional setup after loading the view.


    }

    func btn_clicked(_ sender: UIBarButtonItem) {
        // Do something
    }

    override func prepare(for segue: UIStoryboardSegue, sender: Any?) {
        if segue.identifier == "videoSegue"
        {
            //set up the player
            let videoURL = Bundle.main.url(forResource: "The Atlanta Goat_ Part One-HD", withExtension: "mp4")
            let videoViewController = segue.destination as! AVPlayerViewController
            videoViewController.player = AVPlayer(url: videoURL!)
            videoViewController.player?.play()


        }
    }


}

是。 XYFeatureViewControllers是便利的UIViewController子类。 例如, UITableViewController继承自UIViewController ,假定其viewUITableView类型,并且已经符合UITableViewDelegateUITableViewDataSource协议。

通常,它们为委托方法提供默认实现,从而立即“正常工作”。

如果使用UITableView ,我建议自己使用自定义UIViewController和添加UITableView以具有完全的灵活性。

例如, UITableViewController具有UITableView作为根视图,因此,如果您想稍后在屏幕上缩小tableView(示例),则不能这样做。

在您的自定义viewController中,tableView将是rootView的子视图,因此调整它的大小或在其旁边添加第二个视图将不是问题。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM