【问题标题】:RootViewController根视图控制器
【发布时间】:2009-11-02 18:58:12
【问题描述】:

我现在正在学习这个,所以这些问题可能有点幼稚。这就是我想要做的。我的第一个视图是静态填充表格的一个单元格,当您选择其中一个单元格时,它会拉出一个表单来输入数据。

现在,我一直在阅读有关导航按钮和一般导航的文档,看来我需要两个单独的视图控制器。一个用于基本应用程序,另一个用于在选择单元格时提出的新页面。这是正确的吗?

抱歉,这可能有点基本,但我不知道在这里做什么。谢谢。

【问题讨论】:

    标签: iphone sdk navigation


    【解决方案1】:

    没错。您将有两个视图控制器:一个“根”视图控制器,它是最顶层的视图,第二个视图控制器包含编辑表单。

    当您点击一个单元格时,第二个视图控制器将被推送到导航堆栈上。

    【讨论】:

      【解决方案2】:

      基本上你需要创建第二个 UIViewController 子类,这个 viewcontroller 需要在切换视图时附加到你的主窗口。

      -(IBAction) SwitchView:(id)sender
      {
      MySubViewController *subViewController = [[MySubViewController] alloc]
                                               initWithNibName:@"SubView" bundle:nil];
      self.view insertSubView:subViewController.view atIndex:0];
      [subViewController release];
      }
      

      【讨论】:

      • 以后有没有办法将 rootviewcontroler 更改为 uiviewcontroleer 子类?假设我决定我应该在 table view/RootViewController 前面有另一个窗口视图。你会怎么做?
      • 您拥有的根视图控制器已经是UIViewController 子类。如果您想在根视图控制器的“前面”有另一个视图,您可以将该视图添加为根视图控制器的子视图,并将其放在所有其他子视图的顶部。
      • 通过将 viewController 视图添加到当前视图来手动管理视图层次结构从来都不是很好。如果你这样做,你的 viewController 将永远不会调用它的默认方法。
      【解决方案3】:

      是的,您需要两个视图控制器。

      查看斯坦福 CS193P iPhone 应用程序编程课程的第 7 课。它可以在线获得。幻灯片和讲座都通过 iTunes U 进行。

      CS193P iPhone Application Programming

      我真的很喜欢看课程!

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2011-02-04
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多