Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/iphone/43.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/objective-c/22.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Iphone 目标c继承/协议混淆:UITableViewController_Iphone_Objective C_Cocoa Touch_Xcode_Cocoa Design Patterns - Fatal编程技术网

Iphone 目标c继承/协议混淆:UITableViewController

Iphone 目标c继承/协议混淆:UITableViewController,iphone,objective-c,cocoa-touch,xcode,cocoa-design-patterns,Iphone,Objective C,Cocoa Touch,Xcode,Cocoa Design Patterns,现在我正试着把我的头脑集中在目标C和XCode上。我正在玩弄UITableView,在分离背后的概念时遇到了问题 UITableViewController UITableViewDelegate UITableViewDataSource 我熟悉MVC模式,我从Apple Developer文档中了解到,他们的框架使用委托来“专门化”类,而无需子类化,数据源类定义了如何将数据从模型映射到视图(如果我错了,请纠正我) 当我通过选择新文件创建TableViewController时..>Coc

现在我正试着把我的头脑集中在目标C和XCode上。我正在玩弄
UITableView
,在分离背后的概念时遇到了问题

  • UITableViewController
  • UITableViewDelegate
  • UITableViewDataSource
我熟悉MVC模式,我从Apple Developer文档中了解到,他们的框架使用委托来“专门化”类,而无需子类化,数据源类定义了如何将数据从模型映射到视图(如果我错了,请纠正我)

当我通过选择新文件创建TableViewController时..>Cocoa Touch Class>UIViewController子类(检查UITableViewController子类)看到该模板包含UITableViewDelegate和UITableViewDataSource中的所有函数,而没有在头文件中指定TableViewController实现这些协议,我感到困惑。UITableViewController的文档称其“符合UITableViewDelegate和UITableViewDataSource”。这是否意味着它实现了这些协议

所以我的问题是:UITableViewController仅仅是一个结合了UITableViewDelegate和UITableViewDataSource的方便类,还是我遗漏了什么?如果我提供单独的UITableViewDelegate和UITableViewDataSource,是否需要UITableViewController?


谢谢大家!

UITableViewController是一个预先配置了UITableView并将自身设置为表视图的委托和数据源的控制器

所以是的,这是一个相当方便的课程

您不需要使用它,特别是如果您提供自己的数据源和委托