我建议您阅读Apple的View Controller Programming Guide for iOS,以便深入了解视图控制器的用途。
作为一个快速概述,视图控制器通常负责管理手机大小的设备上的单个“屏幕”内容或iPad上屏幕的一部分,因为可以在iPad上使用多个视图控制器,例如UISplitViewController
。如果您想在iPad上的全屏视图控制器之间进行动画制作,则可以使用UINavigationController
,它可以管理视图控制器的层次结构。您没有提及GoToPage
从哪里继承,无论是UIView
还是UIViewController
。在你的情况下,它应该是UIViewController
的一个子类。
使用UINavigationController
将允许您管理多个UIViewController
子类,同时保持层次结构良好,以便用户可以导航回到先前的视图控制器。您可以使用-pushViewController:animated:
将视图控制器子类的新实例推送到导航控制器的视图控制器堆栈上,在大多数情况下,导航回自动由UINavigationController
自动处理。
XIB简单地封装了用户界面,而不是任何用户定义的代码。 XIB的文件所有者代理应设置为UIViewController
的子类,它允许您通过使用子类的IBOutlet
和IBAction
属性来弥合XIB上的界面元素与UIViewController
子类中的代码之间的差距。
最后,如果您只是定位iOS 5.0,我建议您查看UIPageViewController
,它管理多个视图控制器,并允许您使用类似iBooks的翻页动画在它们之间切换。首先并且最重要的是,通读视图控制器编程指南1