我正在尝试进行切换视图。我的第一个视图是故事板,我想切换到view2,我在第一个视图中单击按钮时没有问题一切都很好。问题是当我试图回去时,屏幕变黑并且不会回到第一个视图。这是我正在使用的代码。
- (IBAction)View2:(id)sender;
- (IBAction)View2:(id)sender {
View2 *second = [[View2 alloc] initWithNibName:nil bundle:nil];
[self presentModalViewController:second animated:YES];
}
这里是我用来从第二个视图回到第一个视图的代码。
- (IBAction)back:(id)sender;
- (IBAction)back:(id)sender {
ViewController *second = [[ViewController2 alloc] initWithNibName:nil bundle:nil];
[self presentModalViewController:second animated:YES];
}
我在做某种错误吗?
由于
答案 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
回到上一个视图控制器