不能执行segue和dismiss

时间:2012-01-01 16:26:31

标签: ios cocoa-touch ipad storyboard modalviewcontroller

我无法使用segue呈现第二个视图,然后忽略第一个视图:

[self performSegueWithIdentifier:@"TargetLS" sender: self];
[self dismissModalViewControllerAnimated:YES];

我总是有多个模态视图。

如果我把它如下所示:

[self dismissModalViewControllerAnimated:YES];    
[self performSegueWithIdentifier:@"TargetLS" sender: self];

我得到了一些奇怪的错误代码:

2012-01-01 17:23:54.018 Coverdale[21462:f803] *** Assertion failure in -[UIWindowController transition:fromViewController:toViewController:target:didEndSelector:], 
/SourceCache/UIKit_Sim/UIKit-1912.3/UIWindowController.m:188

2 个答案:

答案 0 :(得分:2)

使用模态视图时,您应该设计程序流程使用模态视图来收集或显示信息,然后返回到显示它的视图。然后,您可以呈现另一个模态视图。如果这对您的程序流程不起作用,您可能需要使用模态视图之外的其他内容。

答案 1 :(得分:0)

好的,我到目前为止,在viewDidLoad我正在为不同的方向设置一个新的界面:

if([UIApplication sharedApplication].statusBarOrientation == UIInterfaceOrientationLandscapeLeft || [UIApplication sharedApplication].statusBarOrientation == UIInterfaceOrientationLandscapeRight)
{

并改变方向:

 - (void)willAnimateRotationToInterfaceOrientation:(UIInterfaceOrientation)toInterfaceOrientation duration:(NSTimeInterval)duration
{
NSLog(@"Rotation");
if(toInterfaceOrientation == UIInterfaceOrientationLandscapeLeft || toInterfaceOrientation == UIInterfaceOrientationLandscapeRight)
   {