【问题标题】:UIViewControllers and UIViews... how to architect a simple appUIViewControllers 和 UIViews...如何构建一个简单的应用程序
【发布时间】:2009-04-14 21:19:43
【问题描述】:

我有点困惑我需要多少控制器,以及何时可以将 UIView 加载到同一个控制器中,而不是为两个单独的 UIView 使用两个控制器。

这是我目前的情况。我有一个简单的应用程序,它在开始屏幕上接收信息,然后根据来自用户的信息(通过 UIPicker 和文本字段),它将翻转动画显示到一个新视图,该视图是以下两种选择之一:ViewA 或视图B。

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

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

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

我觉得 1)GenController 和 GetInfoController 应该是一样的,但是我不确定如何集成它们。我是否将 GetInfoController 直接加载到 UIWindow 中?那我需要在 ViewDidLoad 中做任何事情吗? 2)我应该有一个 viewXController 而不是一个用于 ViewA 和 ViewB 的吗?...如何根据 GetInfo 中的逻辑将不同的 UIView 加载到一个控制器中?

【问题讨论】:

  • 将来可能应该用 iPhone 标记...

标签: objective-c uiview uiviewcontroller


【解决方案1】:

听起来您想使用UINavigationController。它维护了几个UIViewControllers,并且可以很容易地从一个切换到另一个。

通常,单个UIViewController 维护单个UIView。 (因此UIViewController 类的“视图”属性。)

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

[self.navigationController pushViewController:secondViewController animated:YES];

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2015-03-31
    • 1970-01-01
    • 2020-04-02
    • 2019-12-17
    • 2010-09-26
    • 2011-04-06
    • 2013-05-18
    • 1970-01-01
    相关资源
    最近更新 更多