我这里有一个非常奇怪的问题。我有一个带Tabbar控制器和4个选项卡的应用程序,每个选项卡都有一个连接到Viewcontroller的导航控制器。一切都按预期工作,但现在我已经为几个视图添加了一个按钮,它会调用一个模态视图控制器来向上滑动并显示一些内容。在这个Modal VC中,还有另一个隐藏模态视图的按钮。 隐藏模态视图后,如果我点击导航栏中的后退按钮,视图不会返回动画,只是在没有动画的情况下立即显示上一个视图,而导航栏确实是动画的。但是,当我使用标签栏切换到另一个视图并立即切换回来时,它会突然再次开始工作。
我正在使用没有Storyboard的iOS SDK 6,因为我几年前在iOS 3.2上开发了这个应用程序
这就是我展示Modal VC的方式:
-(void)reportIssue{
ReportIssueViewController *rivc = [[ReportIssueViewController alloc] initWithNibName:@"ReportIssueViewController" bundle:[NSBundle mainBundle]];
[self.navigationController presentModalViewController:rivc animated:TRUE];
[rivc release];
}
这就是我隐藏它的方式:
- (IBAction)cancelIssue:(id)sender {
[self dismissViewControllerAnimated:TRUE completion:NULL];
}
有没有人有这样一个奇怪的问题? 关于如何摆脱这种行为,我会很高兴。
提前致谢。
答案 0 :(得分:5)
我发现了问题。我已经将UITabbarController子类化了,我添加了一个-(void)viewWillAppear
- 函数,我已经放了一些逻辑。不幸的是,我忘了在该函数中添加[super viewWillAppear:animated]
调用。非常愚蠢的错误。
感谢rdelmar,他在我的问题的第一条评论中指出了可能的原因。