4

我发现这段代码显示了一个模式视图:

- (void)add:(id)sender {
   // Create the root view controller for the navigation controller
   // The new view controller configures a Cancel and Done button for the
   // navigation bar.
   RecipeAddViewController *addController = [[RecipeAddViewController alloc]
                       initWithNibName:@"RecipeAddView" bundle:nil];
   addController.delegate = self;

   // Create the navigation controller and present it modally.
   UINavigationController *navigationController = [[UINavigationController alloc]
                             initWithRootViewController:addController];
   [self presentModalViewController:navigationController animated:YES];


   // The navigation controller is now owned by the current view controller
   // and the root view controller is owned by the navigation controller,
   // so both objects should be released to prevent over-retention.
   [navigationController release];
   [addController release];
}

我的问题是如何实现这段代码(我将把它放在 buttonPress 方法中)

我需要在我的头文件中定义任何东西吗?让我感到困惑的是苹果提供了这个并且没有头文件所以我不知道是否应该有任何东西?

该代码指的是 RecipieAddViewController 我用什么来代替它,“UIViewController”?

我在头文件中作为代表放了什么?我需要在其他任何地方进行设置吗?喜欢房产吗?

一旦我在我的 buttonPress 方法中复制了这段代码以使其工作,我还需要做些什么吗?

感谢和抱歉所有的问题。

4

1 回答 1

4

我的问题是如何实现这段代码(我将把它放在 buttonPress 方法中)

将方法定义为IBActionlike-(IBAction)add:(id)sender并在界面构建器中将按钮的touch up inside事件绑定到视图控制器对象的add:操作出口。

我需要在我的头文件中定义任何东西吗?让我感到困惑的是苹果提供了这个并且没有头文件所以我不知道是否应该有任何东西?

没有。所有这些东西需要的是UIKit.h 您通常需要更改标题以添加方法、添加实例变量或包含自定义类。但是,您可能需要#import RecipeAddViewController.h某个位置(在您的头文件或实现文件中)才能使用该类。对于您编写的要在另一个文件中使用的任何自定义类都是如此。

代码指的是 RecipieAddViewController 我用什么来代替它,“UIViewController”?

将其替换为您要推送的视图控制器类。 UIViewController裸体本身很少有用。它是子类化的。因此,您创建一个继承自的新类UIViewController,导入它的标头,创建它的实例,然后将其推送到导航控制器上。

于 2010-02-24T09:02:45.697 回答