现在我正试图围绕Objective C和XCode。我正在玩UITableView
,我在分离
我熟悉MVC模式,我从Apple Developer Docs中了解到,他们的框架使用委托来“专门化”类而不进行子类化,数据源类定义了如何将模型中的数据映射到视图上(请如果我错了,请纠正我。)
当我通过选择新文件...>创建TableViewController时Cocoa Touch Class> UIViewController子类(检查UITableViewController子类)我很困惑地看到模板包含UITableViewDelegate和UITableViewDataSource中的所有函数,而没有在头文件中指定TableViewController实现这些协议。 UITableViewController的文档说它“符合UITableViewDelegate和UITableViewDataSource”。这是否意味着它实现了这些协议?
所以我的问题是:UITableViewController仅仅是一个结合了UITableViewDelegate和UITableViewDataSource的便利类,还是我错过了什么?如果我提供单独的UITableViewDelegate和UITableViewDataSource,我是否需要UITableViewController?
谢谢!
答案 0 :(得分:1)
UITableViewController是一个预先配置了UITableView的控制器,它本身被设置为表视图的委托和数据源。
所以,是的,这几乎是一个便利课。
您不需要使用它,特别是如果您提供自己的数据源和委托。