例如,如果我要求UITableView
显示在视图中的其他内容下方,那么最佳做法是:
UITableView
作为子视图,或UITableViewController
?据我所知,两者都会提供相同的用户体验,但我有兴趣知道哪种方法被认为是最佳做法?
答案 0 :(得分:6)
您有几种选择:
UITableView
并使包含视图控制器成为表视图的数据源和委托。UITableView
并将其他类设为表视图的数据源和委托。选择取决于适当的责任分工和封装。
选项2&如果您需要在多个视图控制器中嵌入表视图,则允许重用。
您的问题没有简单的答案。这完全取决于您的需求,数据和应用程序的结构。
答案 1 :(得分:3)
iOS的一般规则,尤其是iPhone / iPod touch外形规格,是在任何给定时间屏幕上应该只有一个视图控制器。当你想要违反该指南时,我能想到的唯一情况是你有一个内置了很多逻辑的子视图,并且子视图需要包含在多个其他视图中。例如,popover应该有自己的视图控制器,因为它可能需要与多个其他视图控制器一起显示。
在你的情况下,我强烈建议只添加UITableView作为子视图,除非(1)表视图有很多逻辑与父视图控制器的逻辑无关,或者(2)你需要在应用的另一部分显示相同的表格视图。
答案 2 :(得分:1)
我宁愿使用容器视图控制器,原因如下:
最终,它们都是有效的解决方案。