1

我有一个滚动视图加载到我的主视图中(带有页面控件)。我想要做的是让滚动视图使用“Touchesbegan”方法来查找双击,然后让它将一个新的视图控制器推到导航堆栈上。第二个目标似乎是不可能的。

我有单独的滚动视图控制器调用主视图控制器中的方法。该方法应该将新的视图控制器推送到堆栈上。它没有,但是当我从 mainviewcontrollerclass 中调用此方法时,它确实有效?!

在滚动视图控制器类中:

MainViewController *mvcC = [[MainViewController alloc] init];
[mvcC loadMapView];
[mvcC release];

在 mainviewcontroller 类中:

-(void) loadMapView {
[[self navigationController] pushViewController:mapViewController  animated:YES];
NSLog(@"loadMapView method is called!");
}

谢谢!

4

1 回答 1

1

您正在分配一个新MainViewController的并向其发送-loadMapView消息,而不是MainViewController导航堆栈中现有的任何消息。因此,[self navigationController]该方法为 nil 并且该-pushViewController:animated:方法是无操作的。

于 2011-07-14T23:23:24.233 回答