Swift ViewController不符合协议';UITableViewDataSource

Swift ViewController不符合协议';UITableViewDataSource,swift,swift3,Swift,Swift3,**哪里错了 错误“SecondViewController不符合协议“UITableViewDataSource”** 导入UIKit 类SecondViewController:UIViewController、UITableViewDataSource、UITableViewDelegate { }也许您没有连接UIViewController和UITableView 在Stroyboard, 将鼠标放在UITableView上,使用右键拖动到UIViewController。然后您可以检

**哪里错了

错误“SecondViewController不符合协议“UITableViewDataSource”**

导入UIKit

类SecondViewController:UIViewController、UITableViewDataSource、UITableViewDelegate

{


}

也许您没有连接UIViewController和UITableView

在Stroyboard,
将鼠标放在UITableView上,使用右键拖动到UIViewController。然后您可以检查outlets选项、数据源和委托。检查这些。

请不要将代码作为图像发布。将实际的相关代码复制并粘贴到问题中。
@IBOutlet weak var tableView: UITableView!
var videos:[video] = [video]()

@IBOutlet weak var menuButton: UIBarButtonItem!
override func viewDidLoad() {
    super.viewDidLoad()




        if self.revealViewController() != nil {
        menuButton.target = self.revealViewController()
        menuButton.action = #selector(SWRevealViewController.revealToggle(_:))
        self.view.addGestureRecognizer(self.revealViewController().panGestureRecognizer())


        let model = videoModel()
        self.videos = videoModel().getVideos()

        self.tableView.dataSource = self
        self.tableView.delegate = self

    }

func didReceiveMemoryWarning() {
        super.didReceiveMemoryWarning()
    }


func tableView(_ tableView: UITableView, numberOfRowsInSection section: Int) -> Int {
        return videos.count
    }


func tableView(_ tableView: UITableView, cellForRowAt indexPath: IndexPath) -> UITableViewCell {
        let cell = tableView.dequeueReusableCell(withIdentifier: "BasicCell", for: indexPath)

        let videoTitle = videos[indexPath.row].videoTitle

        //customize the cell
    cell.textLabel?.text = videoTitle


    return cell

    }

}