我有一个 MasterViewController.hmxib (UIViewController),它通过以下方式打开一个 TestDummy.hmxib (UIViewController):
TestDummy *controller = [[TestDummy alloc] initWithNibName:@"TestDummy" bundle:nil];
[scrollView addSubview:controller.view];
我在 TestDummy 中有两个按钮:(打开)、(关闭)和一个标签:(windowDepth)。
我正在尝试创建由第一个 TestDummy 打开的第二个实例 TestDummy。然后让多个 TestDummy (UIViewController) 打开到 N 深度并允许关闭按钮将它们带回零深度。这是我的“打开”按钮。
-(IBAction) btnOpen_Clicked{
TestDummy *newController = [[TestDummy alloc] initWithNibName:@"TestDummy" bundle:nil];
newController.isNotRoot = YES;
newController.windowDepth = self.windowDepth + 1;
//do stuff...
childDummy = newController;
// start the animated transition
[UIView beginAnimations:@"page transition" context:nil];
[UIView setAnimationDuration:1.0];
[UIView setAnimationTransition:UIViewAnimationTransitionCurlUp forView:self.view cache:YES];
//insert your new subview
[self.view addSubview:newController.view];
// commit the transition animation
[UIView commitAnimations];
[newController release];
}
当我这样做时,我在调试控制台中收到错误。
2010-10-07 00:59:12.549 OrionClient[5821:207] *** Terminating app due to uncaught exception 'NSInvalidArgumentException', reason: '-[__NSCFType btnOpen_Clicked]: unrecognized selector sent to instance 0x6a339a0'
一定是内存管理问题,但我无法弄清楚。
提前致谢。