Objective-C - 获取UIViewController参考

时间:2012-02-01 17:02:27

标签: objective-c cocoa-touch uiviewcontroller

我在这里的水深处想要获得一个vc。

我的应用布局如下所示:

TabBarController(持有) - > Tab 1的UINavController(保持a) - > MyOwnListViewController - > UINavController(模态)(持有) - > ItemAddViewController - > AddItemToItemViewController

也许这不是很清楚,所以为了清楚起见,当应用程序启动时我在选项卡1上并且MyOwnListViewController可见,然后我按下导航栏中的+按钮我就​​被带走了模态到ItemAddViewController。从那里我pushViewController AddItemToItemViewController。现在,在此视图控制器中,我想获得对ItemAddViewController的引用。

获取引用的最简单方法是什么?

1 个答案:

答案 0 :(得分:0)

您可以修改AddItemToItemViewController的init ***方法,并将其传递给ItemAddViewController上的引用。

E.G:

在AddItemToItemViewController.h中:

@property (nonatomic, retain) UIViewController *parentController;

在AddItemToItemViewController.m中:

@synthesize parentController;

-(id) initWithParentController:(UIViewController *) controller{
    self = [super init];

    if(self){
        self.parentController = controller;
    }
    return self;
}

-(void) dealloc{
    [self.parentController release];
    [super dealloc];
}

在ItemAddViewController实例中调用控制器时:

UIViewController *controller = [[AddItemToItemViewController alloc] initWithParentController:self];
[self.navigationController pushViewController:controller animated:YES];
[controller release];