切换视图黑页

时间:2012-04-26 23:14:08

标签: iphone xcode

我正在尝试进行切换视图。我的第一个视图是故事板,我想切换到view2,我在第一个视图中单击按钮时没有问题一切都很好。问题是当我试图回去时,屏幕变黑并且不会回到第一个视图。这是我正在使用的代码。

ViewController.h

- (IBAction)View2:(id)sender;

ViewController.m

- (IBAction)View2:(id)sender {
    View2 *second = [[View2 alloc] initWithNibName:nil bundle:nil];
    [self presentModalViewController:second animated:YES];
}

这里是我用来从第二个视图回到第一个视图的代码。

view2.h

- (IBAction)back:(id)sender;

View2.m

- (IBAction)back:(id)sender {
    ViewController *second = [[ViewController2 alloc] initWithNibName:nil bundle:nil];
    [self presentModalViewController:second animated:YES];
}

我在做某种错误吗?

由于

1 个答案:

答案 0 :(得分:0)

您的问题出在View2.m

- (IBAction)back:(id)sender {
    [self dismissModalViewControllerAnimated:YES];
}

应该做的伎俩

Apple有View Controller Programming Guide我建议浏览

UPDATE 如果你需要跳回更多的ViewController,你应该使用NSNotificationCenter或保持对你需要跳回的viewController的引用。

根据我的经验,以下行做2件事中的一件(其中self是UIViewController的子类)

[self dismissModalViewControllerAnimated:YES];

1)如果self提供了另一个视图控制器,则上面的行将关闭在self

之上显示的所有视图控制器

2)如果self没有呈现任何其他视图控制器,则上面的行将忽略self回到上一个视图控制器