我对appDelegate,MainWindow和各种视图(以及相应的控制器)之间的关系感到困惑。我想要实现的是在应用程序启动后立即将控制权移交给“mainController”类,然后根据需要加载nib文件(以最小化app委托中的程序逻辑)。首先,我需要加载登录屏幕,并在成功登录应用程序内容后,理想情况下我读取的逻辑应该位于appDelegate之外,因此是“mainController”类。
“mainController”是否需要与(空白)nib文件连接?这个mainController应该是UIViewController类的子类,尽管它本身没有GUI内容,并且可以使用[window addSubview:mainViewController.view]进行实例化; [window makeKeyAndVisible]; ?或者我应该使用alloc / init语法。在这种情况下,如何从(子)视图引用窗口以便以编程方式添加视图?
任何提示,技巧或教程都会有所帮助。
答案 0 :(得分:1)
您可以同时拥有从XIB文件获取视图的UIViewController和构建UIViews的视图,并以编程方式添加它们。这取决于最简单的情况。 通过编写自己的视图,Interface Builder无法完成所有操作,但对于大多数视图,Interface Builder就足够了。
您应该开始阅读Apple制作的指南,它将指导您完成使用UIViewControllers的不同方法:View Controller Programming Guide