【问题标题】:Navigation based application with an add button带有添加按钮的基于导航的应用程序
【发布时间】:2011-07-16 02:05:03
【问题描述】:

我创建了一个新的基于导航的应用程序项目。然后在 MainWindow.xib 中我向导航栏添加了一个按钮。我想将一个新视图推送到可以输入信息的屏幕上,该信息将作为对象添加到 UITableView 的数组中。

但我不知道在哪里编写 IBAction 以将按钮链接到(Appdelegate 或 RootViewController)?因为正如您在屏幕截图中看到的那样,它位于 MainWindow.xib 中,因为 RootViewController 只是一个 Table 并且不包含导航。但在 MainWindow.xib 的文档视图中,它位于 RootViewController 下。

我是否也必须在 XIB 中创建一个新的 View Controller 并为其创建一个 IBOutlet?

我尝试将代码放入我的 AppDelegate 并将按钮引用到委托,但它不起作用。

请帮忙。提前致谢。

在此处查看屏幕截图:http://i56.tinypic.com/5djbcm.png

【问题讨论】:

    标签: iphone uiviewcontroller uinavigationcontroller xib ibaction


    【解决方案1】:

    当您问自己“此操作属于何处”的问题时,它很可能是控制器,因为控制器处理您应用中的事件流。下一个问题——“当这个动作发生时哪个控制器负责?哪个控制器对这个动作最感兴趣?”。在您的情况下,答案是根表控制器(RootViewController 实例)。在其中创建一个IBAction 方法,它将表单控制器(用于输入信息的控制器)推送到导航控制器。

    // somewhere in RootViewController.m
    - (IBAction)addNewEntry {
        NewEntryFormController *c = [[[NewEntryFormController alloc] init] autorelease];
        // ...
    
        [self.navigationController pushViewController:c animated:YES];
    }
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2017-08-09
      • 2021-01-19
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多