当我从我的模态视图 Controller 返回到我的主视图 Controller (我有一个水平动画)时,我的主 Controller 导航栏将自己放置得有点高,很快就会跳回正确的位置。有人知道为什么吗?我一直在谷歌上搜索它,但没有成功。
应用委托(delegate):
[navigationController.navigationBar setBarTintColor: [UIColor whiteColor]];
[navigationController.navigationBar setTranslucent: NO];
当我按下按钮打开我的信息 View 时:
UIViewController *infoViewController;
infoViewController = [[InfoViewController alloc] initWithNibName:@"InfoViewController" bundle: nil];
infoViewController.modalTransitionStyle = UIModalTransitionStyleFlipHorizontal;
[self presentViewController: infoViewController animated: YES completion:nil];
我没有在任何 xib 文件上使用自动布局。我的主视图 Controller xib 文件为空,状态栏为:默认。我的信息 View Controller xib 文件中有一些内容。
关闭模态视图 Controller 的代码:
-(IBAction)onBackBtnClick:(id)sender
{
[self dismissModalViewControllerAnimated: YES];
}
最佳答案
您所要做的就是在“Info ViewController”viewController 类的 ViewWillAppear 中添加以下代码
-(void) viewWillAppear:(BOOL)animated{
[super viewWillAppear:animated];
[self.navigationController.navigationBar setTranslucent:NO];
[self.navigationController.navigationBar.layer removeAllAnimations];
}
希望它对你有用:)
关于objective-c - 当我关闭 iOS 7 中的模态视图时,为什么我的导航栏会暂时消失?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19052815/