Ios UIViewController中的UITableViewController
我是iOS和objective-C的新手,在理解控制器如何工作方面遇到了一些困难Ios UIViewController中的UITableViewController,ios,uitableview,uiviewcontroller,storyboard,Ios,Uitableview,Uiviewcontroller,Storyboard,我是iOS和objective-C的新手,在理解控制器如何工作方面遇到了一些困难 在我的代码中,我有一个UIViewController(我的自定义控制器由情节提要指定),在它里面,我希望有一个由不同控制器处理的表以及其他对象。正确的方法是什么?将UITableViewController添加到情节提要,并创建UITableViewController的子类(新文件)。在情节提要中,转到Identity Inspector,并在类字段中输入您创建的子类的类型名称。之后,您必须根据自己的要求添加应
在我的代码中,我有一个UIViewController(我的自定义控制器由情节提要指定),在它里面,我希望有一个由不同控制器处理的表以及其他对象。正确的方法是什么?将UITableViewController添加到情节提要,并创建UITableViewController的子类(新文件)。在情节提要中,转到Identity Inspector,并在类字段中输入您创建的子类的类型名称。之后,您必须根据自己的要求添加应用程序逻辑。在情节提要中创建另一个UITableViewController,转到其检查器,并为其分配与之前创建的UITableViewController类相同的UITableViewController类…您可以将该表视图控制器设置为UIViewController的子视图控制器 在情节提要中,您可以通过将容器视图拖动到控制器的视图中轻松完成此操作,这将自动为您提供一个子视图控制器 您将希望:
- 删除它提供给您的子视图控制器(它只是一个UIViewController)
- 拖出一个表视图控制器
- 控件从容器视图拖动到表视图控制器
- 选择“嵌入”李>
如果需要从UIViewController获取对此表视图控制器的引用,可以在
prepareforsgue
中执行此操作——表视图控制器将是segue的目标视图控制器,而prepareForSegue
将在控制器实例化后立即调用。您需要使用嵌入式容器视图
正确的方法是让UITableView由包含它的UIViewController使用UITableViewControllerDelegate进行控制。一个好的开始是我知道,但我想有两个不同的控制器,因为我已经有一个UITableView控制器用于另一个UITableView,我想使用相同的代码。如果没有故事板,这将如何实现?在正常的xib文件中。有什么想法吗?Thanks@Malloc,您可以在代码中使用自定义容器控制器api执行此操作(它在UIViewController类引用中有自己的部分)。基本上,您可以在父控制器上调用addChildViewController:传递您希望成为子控制器的控制器。然后在子对象上调用didMoveToParentViewController:并将父对象作为参数传递。最后,将子视图添加为父视图的子视图。好主意!我学到了一些新东西,这帮了我很多。如何引用父类或子类来传输模型视图?@BillDaugherty,子类将在其parentViewController属性中引用父类,父类通过其ChildViewController数组引用其子类。