2009-04-14 68 views
3

我有点困惑,有多少控制器我需要,当我可以在UIViews加载到相同的控制器,而不是两个控制器为两个单独的UIViews。UIViewControllers和UIViews ...如何构建一个简单的应用程序

这是我目前的情况。我有一个简单的应用程序,它可以在开始屏幕上获取信息,然后基于用户的信息(通过UIPicker和文本框),它向两个选项之一的新视图显示翻页动画:ViewA或ViewB。

现在,我有一个根控制器GenController.view,启动后加载到UIWindow中。然后在GenController中,在ViewDidLoad方法中,我创建另一个控制器GetInfoController的实例,并将insertSubview插入到self.view中,此时,self是GenController的原始实例。

getInfoController接收信息,对用户条目执行一些逻辑,然后相应地加载ViewAController或ViewBController的实例。

ViewAController和ViewBController是非常相似的,但只是有一个UIView看起来有些不同。用户与屏幕的交互将是相同的。

我觉得像1)GenController和GetInfoController应该是一样的,但我不知道如何整合它们。我是否直接将GetInfoController加载到UIWindow中?那么我需要在ViewDidLoad中做些什么吗? 2)我应该有一个viewXController,而不是一个ViewA和ViewB?...如何根据GetInfo中的逻辑将不同的UIViews加载到一个控制器中?

+0

或许应该在与iPhone标签未来... – amattn 2009-04-14 22:38:38

回答

3

这听起来像你会想要使用UINavigationController。它保留了几个UIViewController,并且可以很容易地从一个切换到另一个。

通常,单个UIViewController保持单个UIView。 (因此,“观看”的UIViewController类属性。)

在第一UIViewController,当你想切换到第二UIViewController,你可以这样做:

[self.navigationController pushViewController:secondViewController animated:YES]; 
相关问题