我有一个导航控制器(比如 navC),并且我在 navC 中推送了一个标签栏控制器(比如 tabC)。在 tabC 我有一个视图控制器(比如 viewC)。现在我的任务是让 viewC 在点击时全屏显示。但是有些如何在调整视图大小时,标签栏所在的区域永远不会被占用,我在隐藏标签栏的地方得到一个空白。
问问题
1965 次
2 回答
1
在点击时实现此功能
AppDelegate *appDelegate = (AppDelegate *)[[UIApplication sharedApplication] delegate];
if (appDelegate.navigationController.navigationBar.hidden == NO)
{
CATransition *animation = [CATransition animation];
[animation setType:kCATransitionFade];
[[self.view.window layer] addAnimation:animation forKey:@"layerAnimation"];
[[UIApplication sharedApplication] setStatusBarHidden:YES animated:YES];
[appDelegate.navigationController setNavigationBarHidden:YES animated:YES];
[self.tabBarController.tabBar setHidden:YES];
self.view.frame = CGRectMake(0,0,320,480);
}
if (appDelegate.navigationController.navigationBar.hidden == YES)
{
CATransition *animation = [CATransition animation];
[animation setType:kCATransitionFade];
[[self.view.window layer] addAnimation:animation forKey:@"layerAnimation"];
[[UIApplication sharedApplication] setStatusBarHidden:NO animated:YES];
[appDelegate.navigationController setNavigationBarHidden:NO animated:YES];
[self.tabBarController.tabBar setHidden:NO];
self.view.frame = CGRectMake(0,0,320,368);
}
}
您必须添加 QuartzCore/QuartzCore.h
于 2012-09-10T06:10:11.937 回答
0
也许如果您输入一些代码,我可以提供更准确的帮助,但据我了解,您需要隐藏navigationBar
. navigationController
这种方式navigationController
本身是完全隐藏的,但您仍然可以访问它来推送和弹出视图控制器,就像您已经在做的那样。
self.navigationController = [[UINavigationController alloc] init];
[self.navigationController setNavigationBarHidden:YES animated:NO];
希望这可以帮助...
于 2012-09-10T05:51:55.027 回答