我正在使用Objective C
和xcode
作为后端使用SUP 2.1.3
。我对这项技术非常陌生。我创建了一个以主要细节为设计模板的项目。在详细视图中我使用弹出窗口显示一些细节。而且我在那边有一个按钮。当我点击这个按钮时,我必须在弹出窗口中转到下一个UIView
。
为此我创建了两个UIViewControllers
(viewController1和viewController2)。
在详细信息中,我编写了一个弹出窗口的代码,
-(void)popupAgain
{
ViewController1 *viewController = [[ViewController1 alloc] initWithNibName:@"ViewController1" bundle:nil];
viewController.modalPresentationStyle = UIModalPresentationFormSheet;
[self presentModalViewController:viewController animated:YES];
[viewController release];
}
我在弹出窗口中放了一个按钮,我调用下一个popupAgain函数来获取viewController2
-(IBAction)next:(id)sender
{
[self popupAgain];
}
-(void)popupAgain
{
ViewController2 *viewController_new = [[ViewController2 alloc] initWithNibName:@"ViewController2" bundle:nil];
viewController_new.modalPresentationStyle = UIModalPresentationFormSheet;
[self presentModalViewController:viewController animated:YES];
[viewController_new release];
}
现在的问题是,当我点击下一个按钮时我必须关闭第一个弹出窗口并显示第二个。但即使我正在编写代码,我也无法解散第一个按钮[self dissmissModalViewControllerAnimated:YES];在下一个按钮的操作中,
-(IBAction)next:(id)sender
{
[self dissmissModalViewControllerAnimated:YES];
[self popupAgain];
}
请有人帮我解决这个问题。或者你对此有任何其他想法吗?我对这项技术非常了解。非常感谢您提前提供任何帮助。
答案 0 :(得分:0)
解雇呈现的视图控制器
当需要关闭呈现的视图控制器时,首选方法是让呈现视图控制器关闭它。换句话说,只要有可能,呈现视图控制器的同一视图控制器也应负责解除它。尽管有几种技术用于通知呈现视图控制器应该解除其呈现的视图控制器,但是优选的技术是委托。有关更多信息,请参阅“使用委派与其他控制器通信。”