一尘不染

在Swift中符合ViewController中的协议

swift

尝试符合Swift UIViewController子类中的UITableViewDataSource和UITableViewDelegate。

class GameList: UIViewController {

    var aTableView:UITableView = UITableView()

    override func viewDidLoad() {
        super.viewDidLoad()
        aTableView.delegate = self
        aTableView.dataSource = self
        self.view.addSubview(aTableView)
        //errors on both lines for not conforming
    }

}

文件说,你应该在符合class行后:但那通常在超去。另一个:不起作用。在超类之后使用逗号分隔的列表也不起作用

编辑:

还必须采用每种协议的所有必需方法,而我最初并未这样做。


阅读 197

收藏
2020-07-07

共1个答案

一尘不染

您使用逗号:

class GameList: UIViewController, UITableViewDelegate, UITableViewDataSource {
    // ...
}

但是要意识到,超类必须是逗号分隔列表中的第一项。

如果您未采用协议的所有必需方法,则会出现编译器错误。您必须获取所有必需的方法!

2020-07-07