【问题标题】:iPhone dev view swappingiPhone开发视图交换
【发布时间】:2009-08-18 04:26:46
【问题描述】:

因此,我正在尝试找出为我正在制作的 iPhone 游戏交换视图的最佳方式。我有一个“根视图控制器”,它引用了我想要交换的所有视图控制器。所以我将主菜单视图添加到这个根视图控制器 - [self.view addSubview:mainMenuController.view]; - 然后在主菜单视图中我有一个说明按钮。我在 mainMenuController 中定义了一个 IBAction 来响应被点击的指令按钮。从那里,我调用 [self.view removeFromSuperview] 效果很好。它摆脱了主菜单。所以接下来我想添加说明视图。我认为它会像 [super.view addSubview:super.instructionsController.view] 一样简单,但没有运气!我想了几种方法来解决这个问题,但它们看起来都很不雅,因为我想将所有对我的视图控制器的引用保存在一个地方,即根视图控制器。有什么想法吗?

【问题讨论】:

    标签: iphone objective-c xcode


    【解决方案1】:

    难道你不能让你的主菜单视图控制器告诉根视图控制器它已经关闭,以及它接下来应该加载的视图的引用吗?我假设您没有做类似于 UITableView 所做的事情,在这种情况下您可能想要使用堆栈。

    【讨论】:

      【解决方案2】:

      您是否将 super(一个 Objective-C 关键字)与 self.superview(一个 UIView 属性)混合在一起?

      无论如何,通知主控制器切换到另一个视图确实是一个更好的设计,而不是从添加的子视图中做出决定。

      【讨论】:

        【解决方案3】:

        我只是通过将每个控制器中的委托属性设置为根视图控制器来解决它。

        【讨论】:

          猜你喜欢
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 2010-11-15
          • 1970-01-01
          • 2016-10-22
          • 2010-11-13
          • 1970-01-01
          • 1970-01-01
          相关资源
          最近更新 更多