按下时获取对UIBarButtonItem的父控制器的引用

时间:2014-04-15 16:04:43

标签: ios objective-c

我有一个UINavigationController实例,即在方法中为我的UIPopoverController声明了N.我有两个UIViewController即A和B.最初,当我加载popover时,我将viewcontroller A分配给我的导航控制器N,以便显示A的视图。此时当N显示A时,N已完成UIBarbuttonItem类型的按钮,该按钮被指定为rightNavigation项,并调用方法即M()。

所以这是问题 - 当我按Done时,我需要在被调用的方法M()中加载视图控制器B.这是在N中推B但是为了做到这一点,我需要来自我按下的UIBarButtonItem的导航控制器N的实例。我假设了一些像

的东西
-(void)M:(id)sender
 {
      UINavigationController *N = barButton.parentController;
     [N pushViewController:B animated:NO];
 }

但我没有达成任何解决方案。有人可以帮我这个。谢谢。

1 个答案:

答案 0 :(得分:-1)

在方法B中,您使用:

[self.navigationController pushViewController:ac animated:YES];

// ac ==您要推送的UIVIewController