UINavigationController -> UIViewController -> UIView -> UITableViewController?
Posted
技术标签:
【中文标题】UINavigationController -> UIViewController -> UIView -> UITableViewController?【英文标题】:UINavigationController -> UIViewController -> UIView -> UITableViewController? 【发布时间】:2011-02-01 03:54:24 【问题描述】:在 Interface Builder 内部,我有一个 UINavigationController,它包含一个 UIViewController,它里面有一个 UIView。这个 main UIView 有一堆标签以及一些 ImageView 和自定义 UIView。
我想要做的是在这个 main UIView 中抛出一个 UITableView。这个 UITableView 将占据 UIView 中大约一半的屏幕。我正在尝试在 UIView 下方添加一个 UITableViewController 但每次我这样做时,UITableViewController 对象都会替换我在 IB 中的 UIViewController 对象??
我做错了什么?
我想要:
UINavigationController UIViewController UIView UITableViewController(因为UTableView会在前面的UIView里面)我在这个设置中哪里出错了?当我尝试在 IB 中添加 UITableViewController 时,我得到:
UINavigationController UITableViewController(..err?为什么要替换我的 ViewController?)提前致谢!
【问题讨论】:
【参考方案1】:将 UITableView 放入 UIView 而不是 UITableViewController 后,然后将 table view 的委托和数据源设置为 UIViewController。 当然,UIViewController 应该实现两个协议(table view deleate 和 data source)。
【讨论】:
是的。做了一堆关于 UITableViewController 如何是 UIViewController 的子类的阅读,一些博客甚至为 never 使用 UITableViewController 提出了论据。我很好。谢谢。【参考方案2】:您可能根本不需要表格视图控制器。您必须在视图控制器中添加 UITableView 并实现所有必要的数据源和委托方法。
【讨论】:
以上是关于UINavigationController -> UIViewController -> UIView -> UITableViewController?的主要内容,如果未能解决你的问题,请参考以下文章
带有主 UINavigationController 和详细 UINavigationController 的 UISplitViewcontroller
带有 UINavigationController 的 UITabBarController,在 hidesBottomBarWhenPushed 上隐藏 UINavigationController
在 UINavigationController 内的 UITabBarcontroller 中添加 UINavigationController?
UINavigationController 与 AppDelegate 中的 UISegmentedControl 切换 UINavigationController 的 rootviewcontr
从一个 UINavigationController 到另一个 UINavigationController (Swift iOS 9, xcode 7)