具有多个Nib的ViewController和Subclass ViewController

时间:2012-04-21 21:30:57

标签: ios uiviewcontroller nib

是否可以让ViewController使用一个nib,而我的ViewController的子类指向另一个?

我想做什么:

我有一个应用程序,它有一个主菜单,可以带你到任何部分。在您所在的部分中,您可以下拉一个不同的子部分菜单,该菜单将带您到不同的页面。

我希望所有子节菜单都由每个子节页面将继承的基本ViewController类处理。这样我只需编写代码来处理显示基类中的子节菜单,所有子节页面都会自动拥有它。

虽然我不知道是否可以使用一个nib实例化一个ViewController,并告诉它的基类连接到另一个。

任何帮助或提示赞赏:)

谢谢。

1 个答案:

答案 0 :(得分:1)

在iPhone-world中,UIViewController或UIViewController子类通常负责控制整个视图层次结构。这显然在iPad世界中与UISplitViewController等控制器发生故障。

因此,我会根据您上面给出的说明对您的应用设置做出一些假设: 您可以考虑使用MainMenuViewController。当然,如果你需要它,它可以从一些BaseViewController继承,但MainMenuViewController的nib将允许你导航到各个部分。也许这个笔尖只包含一堆UIButton。您点击一个按钮,然后将您带到与该部分对应的UIViewController子类。例如,如果该部分是运动队,那么View Controller的笔尖可能只包含一个列出当地运动队的UITableView。此视图控制器可以访问此子部分菜单,该菜单可能列出特定运动队的详细信息。这个“细节”部分将是它自己的UIViewController子类(继承自你所说的基本ViewController),它有自己的笔尖,可能还有UILabels列出名称,城市,玩家数量等。

如果从一个子菜单到另一个子菜单的视图层次结构相同,则可以重用视图控制器并只更新其视图层次结构的内容。如果视图层次结构与子菜单与子菜单截然不同,您可能需要考虑管理每个子部分视图层次结构的不同UIViewController子类。