解雇并提出modalviewcontrollers

时间:2011-08-10 13:30:21

标签: iphone objective-c ios

Goodday,

我有一个用户登录的应用程序,当登录详细信息正确时,modalviewcontroller被解除。取消视图控制器后,将调用另一个视图控制器。这一切都很好,除了事实,当我想切换回我的原始控制器:我的登录控制器。我得到了以下代码:

当用户登录时调用此代码:

[self dismissModalViewControllerAnimated:YES];
Form *formcontroller1 = [[Form1 alloc] init];
[self presentModalViewViewController:formcontroller1 animated:YES];

用户登录后,会有一个注销按钮,它会调用以下代码:

[self dismissModalViewControllerAnimated:YES];
Postform3ViewController *logincontroller = [[Postform3ViewController alloc] init];
[self presentModalViewViewController:logincontroller animated:YES];

单击按钮后,我收到以下错误消息:

  

Postform3 [5848:207] * 由于未捕获的异常而终止应用   'NSInternalInconsistencyException',原因:'尝试开始一个   模式转换到转换已经在进行中。等待   viewDidAppear / viewDidDisappear知道当前的转换有   完成“

我想知道是否有人可以帮我解决这个问题。

1 个答案:

答案 0 :(得分:2)

实际上,错误消息会告诉您确切需要做什么。你正在解雇一个模态视图控制器,但是在尝试呈现另一个之前不要等到它被解雇。在视图控制器机制调用-viewDidDisappear:之后,您应该稍后显示第二个视图控制器。